使用步骤:
1.在build.gradle中加入包,点击右上角的同步:
compile
'com.youth.banner:banner:1.4.9'
2.添加权限到你的 AndroidManifest.xm
<
uses-permission android:name="android.permission.INTERNET"> </
uses-permission>
<
uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"></uses-permission>
<
uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></
uses-permission>
3.在布局文件中添加Banner,可以设置自定义属性
<?xml version="1.0" encoding="utf-8"?>
<
LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<
com.youth.banner.Banner
android:id="@+id/ban"
android:layout_width="match_parent"
android:layout_height="250dp">
</
com.youth.banner.Banner>
</
LinearLayout>
4.写一个图片加载器类并继承ImageLoader
//定义的一个Bannerde 图片加载器,继承ImageLoader
public class BannerImageLoad
extends ImageLoader{
//在该方法内用Glide进行加载图片
@Override
public void displayImage(Context context, Object path, ImageView imageView) {
Glide.
with(context).load(path).into(imageView);
}
}
5.解析赋值
//用Gson解析数据并得到该数据的类
Gson gson=
new Gson();
News news = gson.fromJson(msg.
obj.toString(), News.
class);
//得到要展示的图片和标题的类的集合并遍历
List<News.DataBean> data = news.getData();
//新建一个存放图片的集合和标题的集合
ArrayList<String> images=
new ArrayList<>();
ArrayList<String> title=
new ArrayList<>();
//遍历完后把相应的数据添加到集合中
for (News.DataBean bean:data){
images.add(bean.getImgSrc());
title.add(bean.getTitle());
}
//将图片和标题设置到Banner中
ban.setImages(images);
ban.setBannerTitles(title);
//设置图片加载器
BannerImageLoad bil=
new BannerImageLoad();
ban.setImageLoader(bil);
//设置显示样式(显示数字指示器和标题)
ban.setBannerStyle(BannerConfig.
NUM_INDICATOR_TITLE);
//开启Banner
ban.start();
} } };