Browse Source

Update README.md

zhpanvip 5 years ago
parent
commit
7a396f293c
1 changed files with 58 additions and 50 deletions
  1. 58 50
      README.md

+ 58 - 50
README.md

@@ -1,14 +1,18 @@
-# 全新2.0.0版本发布,正式改名为BannerViewPager.
 
 
-![这里写图片描述](https://github.com/zhpanvip/BannerViewPager/blob/v_2.0.0/image/ezgif-4-f4cd74cd939d.gif)
+## 全新2.0.0版本发布,正式改名为BannerViewPager.
+
+
+[外链图片转存失败(img-svwgo7K8-1563331094669)(https://github.com/zhpanvip/BannerViewPager/blob/v_2.0.0/image/ezgif-4-f4cd74cd939d.gif)]
+
+ - **1.gradle中添加依赖**
 
-1.gradle中添加依赖
 ```
 implementation 'com.zhpan.library:bannerview:2.0.0'
 ```
 
-2.在xml文件中添加如下代码:
+ - **2.在xml文件中添加如下代码:**
+
 ```
     <com.zhpan.bannerview.view.BannerViewPager
         android:id="@+id/viewpager"
@@ -25,35 +29,38 @@ implementation 'com.zhpan.library:bannerview:2.0.0'
         android:layout_height="150dp"
         android:layout_margin="10dp" />
 ```
-3.BannerViewPager属性
-Banner支持圆角s
+
+ - **3.BannerViewPager开放API**
+
+开放接口
+| 方法名 | 方法描述 | 默认值 |
+|--|--|--|
+| startLoop() |开启自动轮播  |  |
+| stopLoop() | 停止自动轮播 |  |
+| setInterval(int interval) | 自动轮播事件间隔 |3000  |
+| setCanLoop(boolean canLoop) | 是否可以循环 |  true|
+| setRoundCorner(@DimenRes int radius) | 设置圆角 |  |
+| setRoundCorner(float radius) | 设置圆角 |  |
+| isShowIndicator(boolean showIndicator) |  是否显示指示器|true  |
+| setIndicatorGravity(int gravity) | 指示器位置(Start、Center、End) | Center |
+| setIndicatorRadius(float indicatorRadius) | 指示器圆点半径 |  4|
+|setCurrentItem(final int position)  |  设置当前选中的页面|  |
+| setCurrentItem(final int position, final boolean smoothScroll) | 设置当前选中的页面 |  |
+| setData(List<T> list, HolderCreator<VH> holderCreator) |设置Banner数据  |  |
+
+ - **4.Demo示例**
+
 ```
 	
-	2.0.0新增Api
-	// Banner支持圆角
 	mViewPager.setRoundCorner(R.dimen.banner_corner)
-	// 新增页面滑动时间
 	mViewPager.setScrollDuration(1000)
-	
-	
-	
-	
-	//  是否显示指示器
-        mViewpager.isShowIndicator(true);
-        //  设置指示器位置
+        mViewpager.isShowIndicator(true); 
         mViewpager.setIndicatorGravity(CircleViewPager.IndicatorGravity.END);
-	 //  设置指示器圆点半径
         mViewpager.setIndicatorRadius(6);
-	// 设置指示器颜色
 	mViewPager.setIndicatorColor(Color.parseColor("#6C6D72"),
                 Color.parseColor("#FFFFFF"));
-	
-        
-        //  设置图片切换时间间隔
         mViewpager.setInterval(3000);
-        //  设置是否无限循环
         mViewpager.setCanLoop(true);
-        //  设置是否自动轮播
         mViewpager.setAutoPlay(true);
        
 	
@@ -66,49 +73,50 @@ Banner支持圆角s
             }
         });
         //  设置数据
-        mViewpager.setData(mList, new HolderCreator<ViewHolder>() {
+        mViewpager.setData(mDataList, new HolderCreator<DataViewHolder>() {
             @Override
-            public ViewHolder createViewHolder() {
-                return new MyViewHolder();
+            public DataViewHolder createViewHolder() {
+                return new DataViewHolder();
             }
         });
 ```
 
- 4.自定义ViewHolder 
-  
+**自定义ViewHolder** 
   
-
 ```
-public class MyViewHolder implements ViewHolder<Object> {
-            private ImageView mImageView;
+public class DataViewHolder implements ViewHolder<DataBean> {
+    private ImageView mImageView;
+    private TextView mTvDescribe;
 
-            @Override
-            public View createView(Context context) {
-                // 返回页面布局文件
-                View view = LayoutInflater.from(context).inflate(R.layout.banner_item, null);
-                mImageView = (ImageView) view.findViewById(R.id.banner_image);
-                return view;
-            }
+    @Override
+    public View createView(ViewGroup viewGroup, Context context, int position) {
+        // 返回页面布局文件
+        View view = LayoutInflater.from(context).inflate(R.layout.item_view, viewGroup, false);
+        mImageView = view.findViewById(R.id.banner_image);
+        mTvDescribe = view.findViewById(R.id.tv_describe);
+        return view;
+    }
 
+    @Override
+    public void onBind(final Context context, DataBean data, final int position, final int size) {
+        final DataBean dataBean = data;
+        ImageLoaderUtil.loadImg(mImageView, dataBean.getUrl(), R.drawable.placeholder);
+        mTvDescribe.setText(dataBean.getDescribe());
+        mImageView.setOnClickListener(new View.OnClickListener() {
             @Override
-            public void onBind(Context context, int position, Object data) {
-                // 数据绑定
-                if (data instanceof Integer)
-                    mImageView.setImageResource((Integer) data);
-                else if (data instanceof String) {
-                    ImageLoaderUtil.loadImg(mImageView, (String) data);
-                }
+            public void onClick(View v) {
+                Toast.makeText(context, position + "点击了" + dataBean.getDescribe() + "  页面数" + size, Toast.LENGTH_SHORT).show();
             }
-        }
+        });
+    }
+}
 ```
-
-5.为防止内存泄露在onDestory()中停止图片轮播
+**为防止内存泄露在onDestory()中停止图片轮播**
 ```
 	@Override
     protected void onDestroy() {
+    	mViewpager.stopLoop();
         super.onDestroy();
-        mViewPager2.stopLoop();
-        mViewpager.stopLoop();
     }
 ```