单击按钮时隐藏复选框
Hide checkboxes when button is clicked
我在属于 Activity
的 RecycleView
中设置了 RecyclerView.Adapter
。此 Activity
包含一个按钮。此适配器包含具有复选框的行。单击此按钮时,我想隐藏所有行的复选框。
我在我的适配器中使用 ViewHolder 的模式。
我在考虑这个解决方案:
将我的 activity 作为参数传递给适配器的构造函数。此 activity 包含一种验证按钮是否被单击的方法。单击此按钮时,值会更改并调用 notifyDataSetChanged()
。所以适配器 shows/hides 复选框。
基于 MVP 方法,这是个好主意吗?
可能的解决方案:
每个视图持有者都与一个模型相关 class。在此模型 class 中,您可以持有一个布尔值,指示相应的视图持有者是否应显示复选框。
单击该按钮后,您可以遍历应受影响的项目并将布尔值更改为 true。然后通知受影响项目的数据更改。
适配器可以保存一个布尔值,指示是否应隐藏所有复选框。
每个视图持有者将在创建时收到适配器作为参考(而不是 activity - 这是不好的)并将检查此布尔值是否显示或隐藏复选框。
适配器布尔值将在单击按钮时更新,然后将触发通知数据更改。
我在属于 Activity
的 RecycleView
中设置了 RecyclerView.Adapter
。此 Activity
包含一个按钮。此适配器包含具有复选框的行。单击此按钮时,我想隐藏所有行的复选框。
我在我的适配器中使用 ViewHolder 的模式。
我在考虑这个解决方案:
将我的 activity 作为参数传递给适配器的构造函数。此 activity 包含一种验证按钮是否被单击的方法。单击此按钮时,值会更改并调用 notifyDataSetChanged()
。所以适配器 shows/hides 复选框。
基于 MVP 方法,这是个好主意吗?
可能的解决方案:
每个视图持有者都与一个模型相关 class。在此模型 class 中,您可以持有一个布尔值,指示相应的视图持有者是否应显示复选框。 单击该按钮后,您可以遍历应受影响的项目并将布尔值更改为 true。然后通知受影响项目的数据更改。
适配器可以保存一个布尔值,指示是否应隐藏所有复选框。 每个视图持有者将在创建时收到适配器作为参考(而不是 activity - 这是不好的)并将检查此布尔值是否显示或隐藏复选框。 适配器布尔值将在单击按钮时更新,然后将触发通知数据更改。