Banner轮播图的使用方法

//需要添加依赖和添加网络权限

compile'com.youth.banner:banner:1.4.9'





//控件




//操作

private Bannerbanner; private List list = new ArrayList<>();

//网络上请求的数据 private Stringpath = "http://api.kkmh.com/v1/topic_new/discovery_list?gender=0&sa_event=eyJwcm9qZWN0Ijoia3VhaWthbl9hcHAiLCJ0aW1lIjoxNDg3ODM5MDM5MzE1LCJwcm9wZXJ0aWVzIjp7IkhvbWVwYWdlVGFiTmFtZSI6IueDremXqCIsIlZDb21tdW5pdHlUYWJOYW1lIjoi54Ot6ZeoIiwiJG9zX3ZlcnNpb24iOiI0LjIuMiIsIkdlbmRlclR5cGUiOiLlpbPniYgiLCJGcm9tRmluZENhdGVnb3J5VGFiTmFtZSI6IuWFqOmDqCIsIklzQXV0b0xvYWQiOmZhbHNlLCIkbGliX3ZlcnNpb24iOiIxLjYuMzQiLCIkbmV0d29ya190eXBlIjoiV0lGSSIsIiR3aWZpIjp0cnVlLCIkbWFudWZhY3R1cmVyIjoic2Ftc3VuZyIsIkZyb21GaW5kVGFiTmFtZSI6IuaOqOiNkCIsIiRzY3JlZW5faGVpZ2h0Ijo1NzYsIkNhdGVnb3J5Ijoi5peg5rOV6I635Y-WIiwiSG9tZXBhZ2VVcGRhdGVEYXRlIjowLCJQcm9wZXJ0eUV2ZW50IjoiUmVhZEZpbmRQYWdlIiwiRmluZFRhYk5hbWUiOiLmjqjojZAiLCJhYnRlc3RfZ3JvdXAiOjQ2LCIkc2NyZWVuX3dpZHRoIjoxMDI0LCJGaW5kQ2F0ZWdvcnlUYWJOYW1lIjoi5YWo6YOoIiwiJG9zIjoiQW5kcm9pZCIsIlRyaWdnZXJQYWdlIjoiSG9tZVBhZ2UiLCIkY2FycmllciI6IkNNQ0MiLCIkbW9kZWwiOiJHVC1QNTIxMCIsIiRhcHBfdmVyc2lvbiI6IjMuOC4xIn0sInR5cGUiOiJ0cmFjayIsImRpc3RpbmN0X2lkIjoiQTo5MDUxMDQyNzYzNzU1MTA5Iiwib3JpZ2luYWxfaWQiOiJBOjkwNTEwNDI3NjM3NTUxMDkiLCJldmVudCI6IlJlYWRGaW5kUGFnZSJ9";

//这个是固定数据的操作

//privateString[]images = { //"http://l2.51fanli.net//tuan//images//1//5806eac956808.jpg", //"http://l2.51fanli.net//tuan//images//b//580991bb30560.jpg", //"http://l0.51fanli.net//tuan//images//b//58115f2593dc3.jpg", //"http://l2.51fanli.net//tuan//images//0//57923840b054d.jpg", //"http://l2.51fanli.net//tuan//images//e//58101e11ab164.jpg"};

privateString[] str = new String[10];

privateList stringList = new ArrayList<>(); privateint position=0;

//通过handler来更新ui private android.os.Handlerhan = new android.os.Handler(){ @Override public void handleMessage(Message msg) {

//找到banner控件id banner = (Banner) findViewById(R.id.banner);

//调用方法 banner.setImageLoader(new bannerGlide());

//添加图片的集合 banner.setImages(stringList);

//设置延迟时间 banner.setDelayTime(3000);

//是否自动轮播 banner.isAutoPlay(true);

//开启 banner.start(); } }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);

//这个是遍历固定数据的集合 //for (String s:images) { //stringList.add(s); //} initData(); }

//解析网络请求的数据 private void initData() { newThread(){ @Override public void run() { String s = Utils.parmrs(path); Gson gson = new Gson(); Data data = https://www.it610.com/article/gson.fromJson(s, Data.class); List infos = data.getData().getInfos(); list.addAll(infos); for(Data.DataBean.InfosBean aaa:list){ List banners = aaa.getBanners(); for (Data.DataBean.InfosBean.BannersBeanbanner: banners) { stringList.add(banner.getPic()); Log.e("-----", "run: "+banner.getPic()); }} han.sendEmptyMessage(0); //List banners = infos.get(0).getBanners(); // } }.start(); } //需要继承imageLoader来操作图片的加载 classbannerGlide extends ImageLoader{@Override public void displayImage(Context context, Object path, ImageView imageView) { Glide.with(context).load(path) .placeholder(R.mipmap.ic_launcher) .into(imageView); }


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

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

    推荐阅读