0
  • 能说一下你展示的数据吗?建议单个item要展示的内容加上个标志位,或者专门加一个字段来表示颜色,显示的时候在onBindViewHolder()中读取item的数据,根据标志位或者字段来显示颜色,这样就不会因为recyclerview的复用机制导致显示错误了

    1302969105866940416  评论     打赏       RUOQ
    • yadeep  回复 @RUOQ
      呜呜呜呜,我试了两天了,发现一个严重的BUG,使用notifyItemChanged(int position)可以修改某一项item,让其重新调用onBindViewHolder方法。 有意思的是你可以修改item的文字,在上下滚动RecyclerView的时候不会出现数据错乱,但如果你设置了背景颜色,或者字体颜色后,再上下滚动RecyclerView就会出现错乱的现象了,但是文字不会错。
      yadeep 2022-04-10 14:02   回复 1477668428276826113
    • RUOQ  回复 @yadeep
      你不会控制而已,
      RUOQ 2022-04-10 14:12   回复 1302969105866940416
  • 因为复用的问题,所以你除了处理if,还要处理else

    1153952789488054272  评论     打赏       拉大锯
    • 动态修改item,你应该到适配器里去做,并且在其onBindViewHolder去实现。另外要注意item复用机制,你会出现布局错乱,实质上是这个item复用机制的结果,你需要把条件写全。比如说某些item的图片文字可见性控制,那么你需要写双向逻辑,可见和不可见的case都要覆盖,其他的也是如此

      1255088796991492096  评论     打赏       冒着泡泡的汽水儿
      相关问题
      彭于晏盐城分晏 · recyclerview
      2019-10-30 00:34 689 2
      哦豁! · RecyclerView
      2019-12-20 04:20 1081 4
      痞子小小崔 · recyclerView
      2020-05-28 03:37 400 13
      葬礼上的假发 · Recyclerview
      2020-12-10 06:54 728 2
      Nuttertools · recyclerview联调
      2020-12-26 18:16 451 5