banner数字轮播图

首先,在build.gradle中添加依赖:

   implementation 'com.youth.banner:banner:1.4.10'  //轮播图

下面是使用方法,首先在布局中添加上:

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

然后找到id,进行一些设置:

banner = view.findViewById(R.id.banner);
        //设置banner样式
        banner.setBannerStyle(BannerConfig.NUM_INDICATOR);
        //设置图片加载器
        banner.setImageLoader(new GlideImageLoader());
        //设置图片集合
        banner.setImages(images);
        //设置轮播时间
        banner.setDelayTime(2000);
        //banner设置方法全部调用完毕时最后调用
        banner.start();

注意,image是一个图片的集合:

 private List<Integer> images = new ArrayList<>();
     images.add(R.drawable.a);
     images.add(R.drawable.b);
     images.add(R.drawable.c);

最后,写一下图片加载器

public class GlideImageLoader extends ImageLoader {
        @Override
        public void displayImage(Context context, Object path, ImageView imageView) {
            imageView.setImageResource((Integer) path);
        }
 
        //提供createImageView 方法,如果不用可以不重写这个方法,主要是方便自定义ImageView的创建
        @Override
        public ImageView createImageView(Context context) {
            //使用fresco,需要创建它提供的ImageView,当然你也可以用自己自定义的具有图片加载功能的ImageView
            return new ImageView(context);
        }
    }

还有一些其他的属性可以设置:

Banner banner = (Banner) findViewById(R.id.banner);
    //设置banner样式
    banner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR_TITLE);
    //设置图片加载器
    banner.setImageLoader(new GlideImageLoader());
    //设置图片集合
    banner.setImages(images);
    //设置banner动画效果
    banner.setBannerAnimation(Transformer.DepthPage);
    //设置标题集合(当banner样式有显示title时)
    banner.setBannerTitles(titles);
    //设置自动轮播,默认为true
    banner.isAutoPlay(true);
    //设置轮播时间
    banner.setDelayTime(1500);
    //设置指示器位置(当banner模式中有指示器时)
    banner.setIndicatorGravity(BannerConfig.CENTER);
    //banner设置方法全部调用完毕时最后调用
    banner.start();

转载链接:https://blog.csdn.net/haojiagou/article/details/82629039
github链接:https://github.com/youth5201314/banner

猜你喜欢

转载自blog.csdn.net/jiaosheng1/article/details/91380612