美文网首页
快速使用Bigkoo/Android-ConvenientBan

快速使用Bigkoo/Android-ConvenientBan

作者: 叁分钟热血 | 来源:发表于2018-11-21 19:20 被阅读40次

github地址:

https://github.com/Bigkoo/Android-ConvenientBanner

下面我只做了图片的轮播、从网络获取图片。
功能很强大,自己挖掘吧。
依赖:

dependencies {
    implementation 'com.bigkoo:ConvenientBanner:2.1.4'
}

布局//canLoop是否循环

    <com.bigkoo.convenientbanner.ConvenientBanner
        android:id="@+id/convenientBanner"
        android:layout_width="match_parent"
        android:layout_height="160dp"
        app:canLoop="true" />

逻辑处理

 mConvenientBanner =headView.findViewById(R.id.convenientBanner);
 mConvenientBanner.setPages(
                new CBViewHolderCreator() {
                    @Override
                    public NetWorkImageHolderView createHolder(View itemView) {
                        return new NetWorkImageHolderView(getContext(), itemView);
                    }
                    @Override
                    public int getLayoutId() {
                        return R.layout.item_head_image;
                    }
                }, getImages())
                .setPageIndicatorAlign(ConvenientBanner.PageIndicatorAlign.ALIGN_PARENT_RIGHT)//指示器位置
.setPageIndicator(new int[]{R.drawable.indicator_normal, R.drawable.indicator_select});//两个指示器
//设置点击事件
mConvenientBanner.setOnItemClickListener(new OnItemClickListener() {
            @Override
            public void onItemClick(int position) {
                ToastUtils.showShort("目标" + position);
            }
        });
//开始轮播 2000时间间隔
mConvenientBanner.startTurning(2000);

指示器圆点

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="oval">
    <solid android:color="@color/tab_select_color" />
    <corners android:radius="5dip" />
    <size
        android:width="6dp"
        android:height="6dp" />
</shape>

网络获取图片 NetWorkImageHolderView

public class NetWorkImageHolderView extends Holder<String> {
        private ImageView headBannerImage;
        private Context mContext;
        private NetWorkImageHolderView(Context context, View itemView) {
            super(itemView);
            mContext = context;
        }
        @Override
        protected void initView(View itemView) {
            headBannerImage =itemView.findViewById(R.id.head_banner_img);
        }
        @Override
        public void updateUI(String data) {
            GlideUtils.loadImage(mContext, data, headBannerImage);
        }
    }

相关文章

网友评论

      本文标题:快速使用Bigkoo/Android-ConvenientBan

      本文链接:https://www.haomeiwen.com/subject/fexhqqtx.html