欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

BGABanner 第三方轮播图的实现

程序员文章站 2024-03-24 14:52:28
...

首先我们先引入依赖

  **/*banner轮播*/**
 implementation 'cn.bingoogolapple:bga-	banner:[email protected]'
 **//Picasso图片加载**
compile 'com.squareup.picasso:picasso:2.5.2'

在布局中引入BGA

<!--直接写一个第三方控件  cn.bi-->
<cn.bingoogolapple.bgabanner.BGABanner
android:layout_height="300dp"
android:layout_width="match_parent"
android:id="@+id/banner"
app:banner_pointAutoPlayInterval="2000"/>

如果想设置属性 在布局加入这些

app:banner_pointAutoPlayInterval="2000"  设置 图片	轮	播	时间
app:banner_pointDrawable="@drawable/point" 设置 小圆点的颜色
app:banner_pointContainerLeftRightPadding="10dp" 小圆点左右内间距

在Activity中 找到控件 传数据 设置适配器
传两个集合需要都是String类型 一般我们是网络获取Json 直接把里面的图片网址(和标题)循环加入这个集合就可以了

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    **//找到控件**
    banner=(BGABanner)findViewById(R.id.banner);
    **//实例化 集合**
    final List<String> imgs=new ArrayList<>();
    List<String> miaoshu=new ArrayList<>();
   **//循环添加到集合**
    for (int i=0;i<picUrl.length;i++){
        imgs.add(picUrl[i]);//把数组里的值驾到集合离去
        miaoshu.add(miaoshuUrl[i]);
    }
    **//设置值  里面要添加集合**
    banner.setData(imgs,miaoshu);
     **//设置一个BGbanner的适配器 要给他加泛型  一个图片空间一个字符类型**
    banner.setAdapter(new BGABanner.Adapter<ImageView,String>() {
        @Override
        public void fillBannerItem(BGABanner banner, ImageView itemView, @Nullable String model, int position) {
           **//使用Picasso加载图片**
           Picasso.with(MainActivity.this).load(imgs.get(position)).fit().into(itemView);

        }
    });
}
相关标签: BGABanner使用