RecyclerView不断重复缓存的(?)子视图,而不是寻找onBindViewHolder

专项

我有RecyclerView,其中每个列表项都有一个ImageButton,这些图像我在适配器的onBindViewHolder()中定义:

    int myVote = getMyVote();
    if (myVote != 0) {
        Log.d("dbg", myVote + "");
        holder.ratingButton.setImageResource(R.drawable.ic_star_grey600_36dp);
    }

因此,ratingButton在列表项布局的右下角是一个星形。如果满足条件(myVote!= 0),则其形状将填充为灰色(并因此推送日志记录)。

问题是,当我向下滚动列表时,即使在日志窗口(对于正确的列表项)中只能看到一个记录,我也可以看到其他星星被填满了。此外,按钮更改错误的列表项每5行重复一次,这让我感到困惑。如果我改变

mListView.setItemViewCacheSize(0);
重复周期更改为3,因此我们可以假定它与RecyclerView的缓存和回收机制有某种联系。

请帮我解决问题。谢谢!

奥列格·奥西彭科(Oleg Osipenko)

尝试将您的代码更改为:

if (myVote != 0) {
        Log.d("dbg", myVote + "");
        holder.ratingButton.setImageResource(R.drawable.ic_star_grey600_36dp);
    } else {
        holder.ratingButton.setImageResource(int another resource);
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

RecyclerView onBindViewHolder 没有绘制我的视图

来自分类Dev

视图在RecyclerView Adapter的onBindViewHolder中返回NullPointerException

来自分类Dev

RecyclerView onbindViewHolder

来自分类Dev

在 RecyclerView 的 OnBindViewHolder 中更改视图的文本颜色或背景颜色

来自分类Dev

RecyclerView:如何清除缓存/回收的视图?

来自分类Dev

滚动RecyclerView时,自定义视图值不断变化

来自分类Dev

为什么“重复”属性不断返回 3 而不是 2?

来自分类Dev

子RecyclerView的onBindViewHolder在我的Android嵌套RecyclerView项目中不起作用

来自分类Dev

RecyclerView子项单击onBindViewHolder()

来自分类Dev

RecyclerView onBindViewHolder onclicklistener行为

来自分类Dev

如何删除父视图而不是子视图的模糊视图?

来自分类Dev

如何在Android RecyclerView中缓存Viewholder视图引用

来自分类Dev

在 RecyclerView 中访问 OnBindViewHolder 中的所有持有者视图

来自分类Dev

子视图在collectionView单元中重复吗?

来自分类Dev

Android:onBindViewHolder无法缓存图像

来自分类Dev

如何从RecyclerView中获取子视图?

来自分类Dev

禁用 RecyclerView 的所有子视图

来自分类Dev

Anaconda 不断缓存模块

来自分类Dev

Kafka 视图的行为就像一种不断更新的缓存形式?如何

来自分类Dev

从右到左的支持,而不是某些视图及其子视图

来自分类Dev

在onBindviewHolder组件上重复事件

来自分类Dev

Nested RecyclerView : onBindViewHolder 被无限调用

来自分类Dev

onBindViewHolder 和 RecyclerView 如何工作?

来自分类Java

在RecyclerView中,在OnBindViewHolder方法中

来自分类Dev

RecyclerView何时使用ItemDecoration与onBindViewHolder

来自分类Dev

RecyclerView onBindviewholder Dialog clicklistner 动画

来自分类Dev

寻找整数重复模式

来自分类Dev

寻找价值的重复

来自分类Dev

寻找最重复的名字

Related 相关文章

  1. 1

    RecyclerView onBindViewHolder 没有绘制我的视图

  2. 2

    视图在RecyclerView Adapter的onBindViewHolder中返回NullPointerException

  3. 3

    RecyclerView onbindViewHolder

  4. 4

    在 RecyclerView 的 OnBindViewHolder 中更改视图的文本颜色或背景颜色

  5. 5

    RecyclerView:如何清除缓存/回收的视图?

  6. 6

    滚动RecyclerView时,自定义视图值不断变化

  7. 7

    为什么“重复”属性不断返回 3 而不是 2?

  8. 8

    子RecyclerView的onBindViewHolder在我的Android嵌套RecyclerView项目中不起作用

  9. 9

    RecyclerView子项单击onBindViewHolder()

  10. 10

    RecyclerView onBindViewHolder onclicklistener行为

  11. 11

    如何删除父视图而不是子视图的模糊视图?

  12. 12

    如何在Android RecyclerView中缓存Viewholder视图引用

  13. 13

    在 RecyclerView 中访问 OnBindViewHolder 中的所有持有者视图

  14. 14

    子视图在collectionView单元中重复吗?

  15. 15

    Android:onBindViewHolder无法缓存图像

  16. 16

    如何从RecyclerView中获取子视图?

  17. 17

    禁用 RecyclerView 的所有子视图

  18. 18

    Anaconda 不断缓存模块

  19. 19

    Kafka 视图的行为就像一种不断更新的缓存形式?如何

  20. 20

    从右到左的支持,而不是某些视图及其子视图

  21. 21

    在onBindviewHolder组件上重复事件

  22. 22

    Nested RecyclerView : onBindViewHolder 被无限调用

  23. 23

    onBindViewHolder 和 RecyclerView 如何工作?

  24. 24

    在RecyclerView中,在OnBindViewHolder方法中

  25. 25

    RecyclerView何时使用ItemDecoration与onBindViewHolder

  26. 26

    RecyclerView onBindviewholder Dialog clicklistner 动画

  27. 27

    寻找整数重复模式

  28. 28

    寻找价值的重复

  29. 29

    寻找最重复的名字

热门标签

归档