【问题标题】:RecyclerView: Highlight selected itemRecyclerView:突出显示选定的项目
【发布时间】:2014-12-21 05:27:56
【问题描述】:

我已经实现了RecyclerView,并且我已经将它设置为使用CAB。但是如何突出显示选定的项目?如果我检查了某个位置,我将其存储在SparseBooleanArray 中。 我的第一个想法是将包含所有元素的特定View 存储在我的ViewHolder 中,然后在onBindViewHolder 中以某种方式将背景设置为:?android:attr/activatedBackgroundIndicator 但我该怎么做呢?这是一种有用的方法吗?

【问题讨论】:

  • 这个问题解决了吗?

标签: android cab android-recyclerview


【解决方案1】:

如果你想改变 View 本身,你需要 dispatch adapter.notifyItemChanged(position) 作为回报,recycler view 会调用 onBind 方法来设置背景。

如果您不需要更新视图本身,我建议使用项目装饰器。

【讨论】:

  • 你的意思是不需要更新视图本身?如何使用项目装饰器在视图中装饰单个项目?以及如何使用 android:attr/activatedBackgroundIndicator 设置背景?
【解决方案2】:

我终于通过简单地添加一些小东西解决了这个问题:

首先,RecyclerView 的项目必须使用这个作为背景:

android:background="?android:attr/activatedBackgroundIndicator"

然后对于 RecyclerView 只需调用: setSelected(true);个人观点。

【讨论】:

  • 你能写出完整的代码吗?它对我不起作用
  • @Paul Woitaschek 你能提供任何你如何解决它的代码吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-08-22
  • 2015-01-27
  • 1970-01-01
  • 2017-04-01
  • 2023-03-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多