单击按钮时隐藏复选框

时间:2017-09-27 20:02:32

标签: android recycler-adapter android-viewholder

我在RecyclerView.Adapter中设置RecycleView,属于Activity。此Activity包含一个按钮。此适配器包含具有复选框的行。我想隐藏单击此按钮时所有行的复选框。 我在我的适配器中使用了ViewHolder的模式。

我正在考虑这个解决方案:

将我的活动作为参数传递给适配器的构造函数。此活动包含验证是否单击了按钮的方法。单击此按钮时,值会更改并调用notifyDataSetChanged()。所以适配器显示/隐藏复选框。

基于MVP方法这是一个好主意吗?

1 个答案:

答案 0 :(得分:0)

可能的解决方案:

  • 每个视图持有者都与模型类相关。在此模型类中,您可以保存一个布尔值,指示相应的视图持有者是否应显示该复选框。 单击该按钮时,您可以迭代应该受影响的项目,并将布尔值更改为true。然后通知受影响项目的数据已更改。

  • 适配器可以包含一个布尔值,指示是否应隐藏所有复选框。 每个视图持有者将在创建时接收适配器作为参考(而不是活动 - 这是不好的),并将检查此布尔值是否显示或隐藏复选框。 单击按钮时将更新适配器布尔值,然后将触发更改的通知数据。