关于Bunner简单框架加载网络图片轮播。

来源:互联网 发布:动画片制作软件 编辑:程序博客网 时间:2024/05/29 18:57

1、先来一张效果图


下边的图片是自己加载的本地的图片。上边的图片是无限轮播的。

使用的时候需要添加依赖:

compile 'com.youth.banner:banner:+'compile 'com.github.bumptech.glide:glide:3.8.0'
还有添加网络权限

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

2、

activity_main中:

<com.youth.banner.Banner    android:id="@+id/main_banner"    android:layout_width="match_parent"    android:layout_height="400px" />
3、

mainActivity中:

public class MainActivity extends AppCompatActivity {    private Banner banner;    //将网址存入到数组中    private String[] imageUrl2 = {"http://www.eoeandroid.com/data/attachment/forum/201107/18/142935bbi8d3zpf3d0dd7z.jpg",            "http://p2.so.qhmsg.com/t012260d3b41f75fd6c.jpg",            "http://p4.so.qhmsg.com/t013ffda9265fda17e9.jpg",    "http://p1.so.qhmsg.com/t01eb38aed4329fff56.jpg",    "http://p3.so.qhmsg.com/t018bad5bce1c4ad613.jpg"};    private List<String> urlList;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        urlList = new ArrayList<String>();
        //把数组中的数据添加到集合中去

for
(int i = 0; i < imageUrl2.length; i++) { urlList.add(imageUrl2[i]); } banner = (Banner) findViewById(R.id.main_banner); //设置间隔 banner.setDelayTime(3000); //添加图片 banner.setImages(urlList);
        //设置图片加载的方式(这里是用的glide
 banner.setImageLoader(new BannerImageLoader()); Log.d("image", urlList+"onCreate: "); //banner加点 banner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR); //点居中 banner.setIndicatorGravity(Banner.TEXT_ALIGNMENT_CENTER); //点击事件 banner.setOnBannerClickListener(new OnBannerClickListener() { @Override public void OnBannerClick(int position) { //页面的点击跳转 Toast.makeText(MainActivity.this, "页面的点击跳转详情", Toast.LENGTH_SHORT).show(); } }); banner.start(); }}
4、创建图片加载的方式

BannerImageLoader
public class BannerImageLoader extends ImageLoader {    @Override    public void displayImage(Context context, Object path, ImageView imageView) {        Glide.with(context).load(path).into(imageView);    }}

如果是加载本地图片的话

把本地图片添加到一个集合中去。

格式例如:

private int[] imageUrl = {R.drawable.x,R.drawable.e,R.drawable.w,R.drawable.q,R.drawable.v};
然后把数据中的数据通过for循环添加到集合中去,在这里集合的泛型必须是Integer类型的。

urlList = new ArrayList<Integer>();for (int i = 0; i < imageUrl.length; i++) {    urlList.add(imageUrl[i]);}












阅读全文
0 0