banner 做起来真的很简单 主要是人家的框架写的好 跟着步骤小四步就完成了一个banner的实现
第一步:在build.gradle 填写依赖
compile 'com.youth.banner:banner:1.4.10'
//这个是Glide的依赖文件根据自己的需要添加就好
compile 'com.github.bumptech.glide:glide:3.6.1'
第二步:xml布局
<com.youth.banner.Banner
android:id="@+id/banner"
android:layout_width="match_parent"
android:layout_height="400px" />
第三步:在你的Activity 声明 创建
private Banner banner;
private Banner banner;
private List<Integer> list = new ArrayList();
banner = rootView.findViewById(R.id.banner);
banner.setDelayTime(3000);
往list里面添加图片就Ok了
//list 里自己创造的假数据 等网络请求可以了就可以替换了
list.add(R.mipmap.banner);
list.add(R.mipmap.attention_icon);
list.add(R.mipmap.ic_launcher_round);
banner = rootView.findViewById(R.id.banner);
/**
* Banner
* banner 可以根据自己的需要设置自动更换的秒数时长
* setImagerLoader 是装在图片的容器
* GlidelmageLoader()要以什么样的方式展示,可以再里面设置,
* start()最简单不过了,一个事务的开启
* **/
banner.setDelayTime(3000);
banner.setImages(list).setImageLoader(new GlidelmageLoader()).start();
第四步:需要显示图片的构造器
public class GlideImageLoader extends ImageLoader {
@Override
public void displayImage(Context context, Object path, ImageView imageView) {
/**
注意:
1.图片加载器由自己选择,这里不限制,只是提供几种使用方法
2.返回的图片路径为Object类型,由于不能确定你到底使用的那种图片加载器,
传输的到的是什么格式,那么这种就使用Object接收和返回,你只需要强转成你传输的类型就行,
切记不要胡乱强转!
*/
//Glide 加载图片简单用法
Glide.with(context).load(path).into(imageView);
}
}