RecyclerView 和保存+检索每个适配器项的临时状态

RecyclerView and saving+retrieving temporary states per adapter item

如果调用了ViewHolder's itemViewsetActivated(.),则该信息在视图被回收后继续存在(即,如果前一个被激活,则下一个也将被激活)。

在适配器中的每个项目而不是回收器中的每个 itemView 中保存和存储此信息的最佳位置在哪里?使适配器中的项目成为一个单独的容器,其中包含一个项目和一个布尔值,然后将其保存在onViewRecycled(.)中,并在onBind(.)?

中再次有条件地调用setActivated(.)

或者是否有更好的方法? (我在想ListView可能更直观,但除非RecyclerView强烈反对这种类型的任务,否则我宁愿使用它。)

好吧,我最终创建了一个小型的本地私有 class 来保存状态和对象。现在状态只包括一个布尔值 isSelected,但我想它可以扩展并在需要时变成一个完整的 class。