فهرست منبع

Update Sample

zhpanvip 5 سال پیش
والد
کامیت
102b7862b2

+ 16 - 3
app/src/main/java/com/example/zhpan/circleviewpager/activity/PhotoViewActivity.kt

@@ -2,11 +2,12 @@ package com.example.zhpan.circleviewpager.activity
 
 
 import android.os.Bundle
+import android.view.View
 
 import com.example.zhpan.circleviewpager.R
-import com.example.zhpan.circleviewpager.adapter.PhotoAdapter
 import com.example.zhpan.circleviewpager.viewholder.PhotoViewHolder
 import com.zhpan.bannerview.BannerViewPager
+import com.zhpan.bannerview.BaseBannerAdapter
 
 class PhotoViewActivity : BaseDataActivity() {
 
@@ -19,9 +20,21 @@ class PhotoViewActivity : BaseDataActivity() {
 
     private fun initViewPager() {
         val bannerViewPager = findViewById<BannerViewPager<Int, PhotoViewHolder>>(R.id.viewpager)
-
         bannerViewPager.apply {
-            adapter = PhotoAdapter()
+            adapter = object : BaseBannerAdapter<Int, PhotoViewHolder>() {
+                override fun onBind(holder: PhotoViewHolder?, data: Int?, position: Int, pageSize: Int) {
+                    holder?.bindData(data, position, pageSize);
+                }
+
+                override fun createViewHolder(itemView: View?, viewType: Int): PhotoViewHolder {
+                    return PhotoViewHolder(itemView!!)
+                }
+
+                override fun getLayoutId(viewType: Int): Int {
+                    return R.layout.item_slide_mode;
+                }
+
+            }
             setCanLoop(false)
         }.create(mDrawableList)
 

+ 0 - 38
app/src/main/java/com/example/zhpan/circleviewpager/adapter/IndicatorAdapter.java

@@ -1,38 +0,0 @@
-package com.example.zhpan.circleviewpager.adapter;
-
-import android.view.View;
-
-import com.example.zhpan.circleviewpager.R;
-import com.example.zhpan.circleviewpager.viewholder.ImageResourceViewHolder;
-import com.zhpan.bannerview.BaseBannerAdapter;
-
-/**
- * <pre>
- *   Created by zhpan on 2020/4/5.
- *   Description:
- * </pre>
- */
-public class IndicatorAdapter extends BaseBannerAdapter<Integer, ImageResourceViewHolder> {
-
-    private int roundCorner;
-
-    public IndicatorAdapter(int roundCorner) {
-        this.roundCorner = roundCorner;
-    }
-
-
-    @Override
-    protected void onBind(ImageResourceViewHolder holder, Integer data, int position, int pageSize) {
-        holder.bindData(data, position, pageSize);
-    }
-
-    @Override
-    public ImageResourceViewHolder createViewHolder(View itemView, int viewType) {
-        return new ImageResourceViewHolder(itemView, roundCorner);
-    }
-
-    @Override
-    public int getLayoutId(int viewType) {
-        return R.layout.item_page_indicator;
-    }
-}

+ 0 - 28
app/src/main/java/com/example/zhpan/circleviewpager/adapter/PhotoAdapter.kt

@@ -1,28 +0,0 @@
-package com.example.zhpan.circleviewpager.adapter
-
-import android.view.View
-import com.example.zhpan.circleviewpager.R
-import com.example.zhpan.circleviewpager.viewholder.PhotoViewHolder
-import com.zhpan.bannerview.BaseBannerAdapter
-
-
-/**
- * <pre>
- *   Created by zhpan on 2020/4/5.
- *   Description:
- * </pre>
- */
-class PhotoAdapter : BaseBannerAdapter<Int, PhotoViewHolder>() {
-    override fun onBind(holder: PhotoViewHolder?, data: Int?, position: Int, pageSize: Int) {
-        holder?.bindData(data, position, pageSize)
-    }
-
-    override fun createViewHolder(itemView: View?, viewType: Int): PhotoViewHolder {
-        return PhotoViewHolder(itemView!!)
-    }
-
-    override fun getLayoutId(viewType: Int): Int {
-        return R.layout.item_photo_view;
-    }
-
-}

+ 17 - 2
app/src/main/java/com/example/zhpan/circleviewpager/fragment/IndicatorFragment.java

@@ -6,9 +6,9 @@ import android.widget.RadioButton;
 import android.widget.RadioGroup;
 
 import com.example.zhpan.circleviewpager.R;
-import com.example.zhpan.circleviewpager.adapter.IndicatorAdapter;
 import com.example.zhpan.circleviewpager.viewholder.ImageResourceViewHolder;
 import com.zhpan.bannerview.BannerViewPager;
+import com.zhpan.bannerview.BaseBannerAdapter;
 import com.zhpan.bannerview.constants.IndicatorGravity;
 import com.zhpan.bannerview.utils.BannerUtils;
 import com.zhpan.idea.utils.ToastUtils;
@@ -69,7 +69,22 @@ public class IndicatorFragment extends BaseFragment {
                 .setScrollDuration(800)
                 .setIndicatorGravity(IndicatorGravity.CENTER)
                 .setOnPageClickListener(position -> ToastUtils.show("position:" + position))
-                .setAdapter(new IndicatorAdapter(getResources().getDimensionPixelOffset(R.dimen.dp_8)))
+                .setAdapter(new BaseBannerAdapter<Integer, ImageResourceViewHolder>() {
+                    @Override
+                    protected void onBind(ImageResourceViewHolder holder, Integer data, int position, int pageSize) {
+                        holder.bindData(data, position, pageSize);
+                    }
+
+                    @Override
+                    public ImageResourceViewHolder createViewHolder(View itemView, int viewType) {
+                        return new ImageResourceViewHolder(itemView, getResources().getDimensionPixelOffset(R.dimen.dp_8));
+                    }
+
+                    @Override
+                    public int getLayoutId(int viewType) {
+                        return R.layout.item_page_indicator;
+                    }
+                })
                 .setRoundCorner(BannerUtils.dp2px(6)).create();
         initRadioGroup();
     }