[关闭]
@zhuhf 2017-11-30T18:40:52.000000Z 字数 1739 阅读 1048

JCBanner 使用手册


一、XML中引入

  1. 固定高度:

    <com.jcgroup.commonlib.ui.widget.bannerView.JCBanner
        android:id="@+id/banner"
        android:layout_width="match_parent"
        android:layout_height="192dp"/>
    
  2. 指定宽高比:

    <com.jcgroup.commonlib.ui.widget.bannerView.JCBanner
        android:id="@+id/banner"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:heightRatio="0.75"/>
    

    以上,表示高度与宽度的比例为:0.75

二、基本使用方式

//...省略...

JCBanner banner = ...;
List<ObjBean> bannerList = ...;
banner.setPages(new BannerItemCreatorImpl<ObjBean>(bannerList) {
        /**
        * 绑定View
        */
        @Override
        public View onCreateView(Context context) {
            View view = LayoutInflater.from(context).inflate(R.layout.banner, null);
            return view;
        }

        /**
        * 绑定数据
        */
        @Override
        public void getItemView(View view, int position, ObjBean data) {
            TextView tv = (TextView) view.findViewById(R.id.tv);
            ImageView iv = (ImageView) view.findViewById(R.id.iv);
            tv.setText(data.getTitle());
            iv.setImageResource(R.drawable.ic_home_default);
        }
    })
      // 指示器
      .setPageIndicator(new int[]{R.drawable.indicator_unselected, R.drawable.indicator_selected})
      // 点击事件
      .setOnItemClickListener(new OnItemClickListener() {
          @Override
          public void onItemClick(int position) {
             // ...
          }
      })
      .start();

//...省略...

三、更多属性支持

  1. XML 配置
属性 描述
canLoop 是否开启循环
heightRatio 宽高比

2. 代码中设置

属性 描述
setCanLoop(boolean canLoop) 是否开启循环
setHeightRatio(float ratio) 设置宽高比
setPageIndicatorAlign(PageIndicatorAlign align) 指示器三个方向:居左 (RelativeLayout.ALIGN_PARENT_LEFT),居中 (RelativeLayout.CENTER_HORIZONTAL),居右 (RelativeLayout.ALIGN_PARENT_RIGHT)
start(long autoTurningTime) 设置翻页时间,单位:毫秒
setCurrentItem(int index) 设置当前显示的Item
setOnPageChangeListener(ViewPager.OnPageChangeListener onPageChangeListener) 页面切换监听器
stop() 停止切换
setPageTransformer(PageTransformer transformer) 自定义页面切换效果
setOnItemClickListener(OnItemClickListener onItemClickListener) Item点击事件
setManualPageable(boolean manualPageable) 是否支持手动切换,默认支持
其他 阅读源码吧...
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注