Closed maydaynicko closed 1 year ago
选择模式下,我选择某项进行删除操作 ,刷新列表后导致下一项无法点击,感觉是数据错乱了,代码如下
mBinding.recyclerView.linear().setup { if (type == 1) { addType<User> { R.layout.room_dialog_mic_queue_user_item } } else { singleMode = true addType<User> { R.layout.room_dialog_mic_queue_manager_item } onChecked { position, isChecked, allChecked -> val model = getModel<User>(position) model.isChecked = isChecked model.notifyChange() } onClick(R.id.iv_checkbox) { val checked = (getModel() as User).isChecked setChecked(modelPosition, !checked) } onClick(R.id.iv_delete) { val model = getModel<User>() val position = modelPosition if (model.isChecked) { mutable.removeAt(position) bindingAdapter?.notifyItemRemoved(position) } else { ToastUtils.showShort("大哥你要删除谁啊") } } } onBind { val imageView = findView<ImageView>(R.id.iv_avatar) imageView.loadWithCircle("https://tvax1.sinaimg.cn/crop.0.0.1002.1002.180/5f808b33ly8fmxu8qbr0cj20ru0ruwg4.jpg?KID=imgbed,tva&Expires=1670409841&ssig=naSU35Ss35") } }.models = data
删除以后调用BindingAdapter.checkedPosition.clear()删除已选中位置集合, 避免单选问题
BindingAdapter.checkedPosition.clear()
BindingAdapter.checkedPosition.clear() 可以了 完美
选择模式下,我选择某项进行删除操作 ,刷新列表后导致下一项无法点击,感觉是数据错乱了,代码如下