繁体   English   中英

RecyclerView的物品如何相互影响

[英]How RecyclerView's item interact to each other

在我的recyclerView中包含带有复选框的少量选项。 我需要这些选项能够相互通信,该怎么办?

我猜这些函数应该用onBindViewHolder()编写,但是我不确定该怎么做。 我通过互联网搜索,但是找不到解决问题的类似方法。

例如:

-------------------------
1. All (With Checkbox)
-------------------------
2. Banana (With Checkbox)
-------------------------
3. Apple (With Checkbox)
-------------------------
4. Meat (With Checkbox)
-------------------------
5. Coconut (With Checkbox)
-------------------------

因此,当我选中“全部”选项时,必须使用onCheckedChangeListener()自动检查其余复选框。

我面临的主要问题是,我不知道项目如何影响Recyclerview中的另一个项目。

有很多方法可以解决这个问题

例如 您可以将isChecked属性添加到模型中

public class Fruit {
  private Boolean isChecked;
}

然后在每个项目的OnClickListener中将其设置为true / false。 您在OnBindViewHolder中检查它的值以显示已选中/未选中的UI复选框

对于全选选项,您可以设置

isChecked = true

对于列表中的所有项目。

所以这就是你想要的? 在此处输入图片说明

在我看来:首先,我们需要为Fruit添加一个属性以使用CheckBox,例如:isFresh...。其次,在勾选CheckBox时更改dataList(传递给RecyclerView Adapter)。 第三,使用adapter.notifyDataSetChanged()更新RecyclerView UI。

跟随我的github获取详细信息: https : //github.com/pvnhat/ArchitectureComponentDemo/pull/2

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM