如何仅在RecyclerView中从特定行获取数据?

时间:2016-10-07 16:57:19

标签: android android-recyclerview adapter android-viewholder recyclerview-layout

我遇到了一个小问题。

当我点击我的RecyclerView中的一行时,我想将其颜色改为其他颜色(即:红色)。
然后,如果我再次点击这一行,我想将其颜色设置回正常颜色(即:白色) 然后,如果我点击第二行或第n行,我想做同样的事情。

我曾尝试使用RecyclerView Adapter类,在我的ViewHolder中我尝试了一些计算用户点击的想法,设置一个布尔值来检查彩色行,并且getAdapterPosition知道行的位置是什么......但实际上所有我的尝试失败了!

请你帮我解决这个问题?

似乎我接近解决方案,但需要一点帮助

1 个答案:

答案 0 :(得分:0)

您需要跟踪列表中选择的项目(否则对视图的任何更改都将被回收)。

保留适配器中所选项目的列表。在适配器的onBindViewHolder中,您可以检查列表,如果列表包含视图/项目,您可以相应地为视图着色。

编辑:请参阅此处以获取工作示例 How to properly highlight selected item on RecyclerView?