From fcdddf8b9b34f9930bec454b5fffe41c0e33ba3c Mon Sep 17 00:00:00 2001 From: Linjiajia <319408893@qq.com> Date: 星期一, 24 四月 2023 21:17:05 +0800 Subject: [PATCH] 功能模块大部分 --- app/src/main/java/com/application/zhangshi_app_android/adapter/FamilyMemorabiliaRvAdapter.java | 14 ++++++++++---- 1 files changed, 10 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/application/zhangshi_app_android/adapter/FamilyMemorabiliaRvAdapter.java b/app/src/main/java/com/application/zhangshi_app_android/adapter/FamilyMemorabiliaRvAdapter.java index 84c2b42..3633bbd 100644 --- a/app/src/main/java/com/application/zhangshi_app_android/adapter/FamilyMemorabiliaRvAdapter.java +++ b/app/src/main/java/com/application/zhangshi_app_android/adapter/FamilyMemorabiliaRvAdapter.java @@ -23,6 +23,7 @@ import com.application.zhangshi_app_android.ui.function.FamilyMemorabiliaActivityViewModel; import java.util.ArrayList; +import java.util.Collection; import java.util.Collections; import java.util.List; import java.util.Objects; @@ -53,7 +54,7 @@ } @Override - protected MyViewHolder getViewHolder(ItemFamilyMemorabiliaBinding itemBind) { + protected MyViewHolder getViewHolder(ItemFamilyMemorabiliaBinding itemBind,int viewType) { return new MyViewHolder(itemBind); } @@ -70,13 +71,18 @@ holder.getBinding().checkbox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - List<FamilyMemorabiliaBean> list = new ArrayList<>(Objects.requireNonNull(viewModel.getCheckListLiveData().getValue())); + if (viewModel.getCheckListLiveData().getValue() == null){ + viewModel.getCheckListLiveData().setValue(new ArrayList<>()); + } + List<FamilyMemorabiliaBean> list = new ArrayList<>(viewModel.getCheckListLiveData().getValue()); if (isChecked){ - list.add(mDataList.get(position)); + if (!list.contains(mDataList.get(position))){ + list.add(mDataList.get(position)); + } }else{ list.remove(mDataList.get(position)); } - viewModel.getCheckListLiveData().postValue(list); + viewModel.getCheckListLiveData().setValue(list); } }); holder.getBinding().checkbox.setChecked(viewModel.getCheckListLiveData().getValue().contains(mDataList.get(position))); -- Gitblit v1.9.1