From 25b98735c5c0cbe40a07ae91a9fb2b204d9166b7 Mon Sep 17 00:00:00 2001
From: Linjiajia <319408893@qq.com>
Date: 星期一, 20 三月 2023 22:30:08 +0800
Subject: [PATCH] 登录和家大事记

---
 app_base/src/main/java/com/android/app_base/base/adapter/BaseRVAdapter.java |   33 +++++++++++++++++----------------
 1 files changed, 17 insertions(+), 16 deletions(-)

diff --git a/app_base/src/main/java/com/android/app_base/base/adapter/BaseRVAdapter.java b/app_base/src/main/java/com/android/app_base/base/adapter/BaseRVAdapter.java
index da0d572..d7df1a6 100644
--- a/app_base/src/main/java/com/android/app_base/base/adapter/BaseRVAdapter.java
+++ b/app_base/src/main/java/com/android/app_base/base/adapter/BaseRVAdapter.java
@@ -23,31 +23,31 @@
  * @date 2023.03.02. 17:09
  * @desc
  */
-public abstract class BaseRVAdapter<T,VDB extends ViewDataBinding> extends RecyclerView.Adapter<BaseRVAdapter.BaseViewHolder<VDB>> {
+public abstract class BaseRVAdapter<T,VDB extends ViewDataBinding,VH extends BaseRVAdapter.BaseViewHolder<VDB>> extends RecyclerView.Adapter<VH> {
 
     /** 涓婁笅鏂囧璞� */
-    private final Context mContext;
+    protected final Context mContext;
 
     /** RecyclerView 瀵硅薄 */
-    private RecyclerView mRecyclerView;
+    protected RecyclerView mRecyclerView;
 
     /** 鏉$洰鐐瑰嚮鐩戝惉鍣� */
-    private OnItemClickListener mItemClickListener;
+    protected OnItemClickListener mItemClickListener;
     /** 鏉$洰闀挎寜鐩戝惉鍣� */
-    private OnItemLongClickListener mItemLongClickListener;
+    protected OnItemLongClickListener mItemLongClickListener;
     /**
      * 璇� adapter 涓婄粦瀹氱殑婊戝姩鐩戝惉鍣�
      */
-    private MyOnScrollListener myOnScrollListener;
+    protected MyOnScrollListener myOnScrollListener;
 
     /** 鏉$洰瀛� View 鐐瑰嚮鐩戝惉鍣� */
-    private SparseArray<OnChildClickListener> mChildClickListeners;
+    protected SparseArray<OnChildClickListener> mChildClickListeners;
     /** 鏉$洰瀛� View 闀挎寜鐩戝惉鍣� */
-    private SparseArray<OnChildLongClickListener> mChildLongClickListeners;
+    protected SparseArray<OnChildLongClickListener> mChildLongClickListeners;
     /**
      * 鍒楄〃鏁版嵁
      */
-    private List<T> mDataList;
+    protected List<T> mDataList;
 
     public BaseRVAdapter(Context context) {
         mContext = context;
@@ -65,16 +65,17 @@
 
     @NonNull
     @Override
-    public BaseViewHolder<VDB> onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
+    public VH onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
         VDB itemBind = DataBindingUtil.inflate(LayoutInflater.from(parent.getContext()),getLayoutId(),parent,false);
-        return new BaseViewHolder<>(itemBind);
+        return getViewHolder(itemBind);
     }
 
     protected abstract int getLayoutId();
-    protected abstract void onBind(BaseViewHolder<VDB> holder, int position);
+    protected abstract void onBind(VH holder, int position);
+    protected abstract VH getViewHolder(VDB itemBind);
 
     @Override
-    public void onBindViewHolder(@NonNull BaseViewHolder<VDB> holder, int position) {
+    public void onBindViewHolder(@NonNull VH holder, int position) {
         View itemView = holder.itemView;
         // 璁剧疆鏉$洰鐨勭偣鍑诲拰闀挎寜浜嬩欢
         if (mItemClickListener != null) {
@@ -172,7 +173,7 @@
      * @param <VDB>
      */
     public static class BaseViewHolder<VDB extends ViewDataBinding> extends RecyclerView.ViewHolder{
-        private VDB binding;
+        protected VDB binding;
         public BaseViewHolder(@NonNull View itemView) {
             super(itemView);
 
@@ -216,9 +217,9 @@
         }
     }
     /**
-     * 浠庡ご閮� 杩藉姞涓�浜涙暟鎹� by hyz
+     * 浠庡ご閮� 杩藉姞涓�浜涙暟鎹�
      */
-    public void addDataFormHead(List<T> data) {
+    public void addDataFromHead(List<T> data) {
         if (data == null || data.size() == 0) {
             return;
         }

--
Gitblit v1.9.1