From efafbbf142c81c233c71de636a2d3ce9dc2124f0 Mon Sep 17 00:00:00 2001 From: Linjiajia <319408893@qq.com> Date: 星期二, 12 九月 2023 19:20:05 +0800 Subject: [PATCH] 修复bug --- app_base/src/main/java/com/android/app_base/base/adapter/BaseRVAdapter.java | 12 ++++++++---- 1 files changed, 8 insertions(+), 4 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 f60803f..2b2f62d 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 @@ -67,12 +67,12 @@ @Override public VH onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { VDB itemBind = DataBindingUtil.inflate(LayoutInflater.from(parent.getContext()),getLayoutId(),parent,false); - return getViewHolder(itemBind); + return getViewHolder(itemBind,viewType); } protected abstract int getLayoutId(); protected abstract void onBind(VH holder, int position); - protected abstract VH getViewHolder(VDB itemBind); + protected abstract VH getViewHolder(VDB itemBind,int viewType); @Override public void onBindViewHolder(@NonNull VH holder, int position) { @@ -212,8 +212,10 @@ if (mDataList == null || mDataList.size() == 0) { setData(data); } else { - mDataList.addAll(data); - notifyDataSetChanged(); + //涓�涓竴涓殑娣诲姞 + for (T datum : data) { + addItem(datum); + } } } /** @@ -281,6 +283,7 @@ position = mDataList.size() - 1; } notifyItemInserted(position); + notifyItemRangeChanged(position, mDataList.size() - position); } /** * 鍒犻櫎鍗曟潯鏁版嵁 @@ -296,6 +299,7 @@ mDataList.remove(position); // 鍛婅瘔閫傞厤鍣ㄥ垹闄ゆ暟鎹殑浣嶇疆锛屼細鏈夊姩鐢绘晥鏋� notifyItemRemoved(position); + notifyItemRangeChanged(position, mDataList.size() - position); } /** * 璁剧疆 RecyclerView 鏉$洰鐐瑰嚮鐩戝惉 -- Gitblit v1.9.1