Android-第三方Banner实现对网络图片的无线轮播

xiaoxiao2021-02-28  31

使用步骤:

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(); 

 } } }; 

转载请注明原文地址: https://www.6miu.com/read-2649967.html

最新回复(0)