在我的recyclerView中,带有复选框的选项很少。我需要这些选项能够相互通信,该怎么办?
我猜这些函数应该用onBindViewHolder()编写,但是我不确定该怎么做。 我通过互联网搜索,但是找不到解决问题的类似方法。
例如:
-------------------------
1. All (With Checkbox)
-------------------------
2. Banana (With Checkbox)
-------------------------
3. Apple (With Checkbox)
-------------------------
4. Meat (With Checkbox)
-------------------------
5. Coconut (With Checkbox)
-------------------------
因此,当我选中“全部”选项时,必须使用onCheckedChangeListener()自动检查其余复选框。
我遇到的主要问题是,我不知道该项目如何影响Recyclerview中的另一个项目。
答案 0 :(得分:0)
有很多方法可以解决这个问题
例如您可以将isChecked属性添加到模型中
public class Fruit {
private Boolean isChecked;
}
然后在每个项目的OnClickListener中将其设置为true / false。您可以在OnBindViewHolder中检查它的值以显示已选中/未选中的UI复选框
对于全选选项,您可以设置
isChecked = true
用于列表中的所有项目。
答案 1 :(得分:0)
我认为:
首先,我们需要为Fruit添加一个属性以使用CheckBox,例如:isFresh,...
其次,在勾选CheckBox时更改dataList(传递给RecyclerView Adapter)。
第三,使用adapter.notifyDataSetChanged()
更新RecyclerView UI。
按照我的github获取详细信息:https://github.com/pvnhat/ArchitectureComponentDemo/pull/2