Android——图片轮播

Android技术——轮播功能android

轮播须要什么? 答:实现图片与广告语展现、循环播发以及手动切换、支持加载本地与网络图片。git

性能优化? 答:多张图片与指示器展现、自动与定时、循环播发、滑动流畅而且无卡顿、加载速度、图片点击。github

下面介绍一种简单又好用的图片轮播控件-banner性能优化

 

1.先在gradle加入依赖包compile 'com.youth.banner:banner:1.1.5'网络

2.布局文件:框架

 

<com.youth.banner.Banner
    android:layout_width="match_parent"
    android:layout_height="300dp"
    android:id="@+id/banner">
</com.youth.banner.Banner>ide

 

3.而后在Activity进行配置布局

 

  public class BannerActivity extends AppCompatActivity {
    private Banner banner;
    //设置图片资源:url或本地资源
    String[] images= new String[] {
            "http://img.zcool.cn/community/0166c756e1427432f875520f7cc838.jpg",
            "http://img.zcool.cn/community/018fdb56e1428632f875520f7b67cb.jpg",
            "http://img.zcool.cn/community/01c8dc56e1428e6ac72531cbaa5f2c.jpg",
            "http://img.zcool.cn/community/01fda356640b706ac725b2c8b99b08.jpg",
            "http://img.zcool.cn/community/01fd2756e142716ac72531cbf8bbbf.jpg",
            "http://img.zcool.cn/community/0114a856640b6d32f87545731c076a.jpg"};

    //设置图片标题:自动对应
    String[] titles=new String[]{
            "全场2折起","十大星级品牌联盟",
            "嗨购5折不要停","12趁如今",
            "嗨购5折不要停,12.12趁如今",
            "实打实大顶顶顶顶"};

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_banner);
        banner= (Banner) findViewById(R.id.banner);              //绑定id
        banner.setBannerStyle(Banner.CIRCLE_INDICATOR_TITLE);   //设置样式
        banner.setIndicatorGravity(Banner.CENTER);              //指示器居中
        banner.setBannerTitle(titles);                          //广告词
        banner.isAutoPlay(true);                                //是否自动播放
        banner.setDelayTime(5000);                              //设置时间
        //自定义图片加载框架
        banner.setImages(images, new Banner.OnLoadImageListener() {
            @Override
            public void OnLoadImage(ImageView view, Object url) {
                System.out.println("加载中");
                Glide.with(getApplicationContext()).load(url).into(view);   //glide图片加载  超级好用
                System.out.println("加载完");
            }
        });
        //设置点击事件
        banner.setOnBannerClickListener(new Banner.OnBannerClickListener() {
            @Override
            public void OnBannerClick(View view, int position) {
                Toast.makeText(getApplicationContext(),"你点击了:"+position,Toast.LENGTH_SHORT).show();
            }
        });
    }
}性能

 

4.加入网络权限:gradle

<uses-permission android:name="android.permission.INTERNET" />

展现:

 

 

是否是很简单啊!反正我以为很好用,没有了之前viewPager的卡死,并且配置程度很高,能够灵活的设置图片的数量、循环时间、图片加载的方式,指示器配置等。这个黑科技还不错吧!以为不错的同窗点个赞吧!

想要了解更多的能够去原做者的GitHub Android广告图片轮播控件

相关文章
相关标签/搜索