0
  • 最佳答案

    SwitchButton的setChecked和onCheckedChanged解除关联解决了此问题。

    list item 滑出屏幕时就意味着有新的list item 滑进屏幕,新的list item 调用getview 获取的是滑出屏幕的item 的convertView。

    所以绘制新的item ,调用setChecked(), 实际调用的是旧的对象的setChecked.

    1250424164393684992  评论     打赏       Yuki_Ma
    • 现在很少用ListView了,推荐你使用RecyclerView。状态错乱的,一般是复用问题。你的判断有问题呢!!!字符串的判断用==吗?这是java哦,java用==,字符串里判断的是内存地址。你用equals吧???

      1153952789488054272  评论     打赏       拉大锯
      • 上面的重新显示出来就是重新加载了 所以状态就没了 应该可以给List里增加一个状态属性 每次选中就更新list的状态

        1247069679944470528  评论     打赏       lxxxx9
        • Yuki_Ma  回复 @lxxxx9
          感谢回答,但是选中的时候调用了 notifyDataSetChanged(); 好像还是没有解决问题
          Yuki_Ma 2020-05-31 23:57   回复 1250424164393684992
      相关问题
      2023-11-21 15:11 13 2
      陈钱罐16 · 领券联盟
      2023-11-11 18:09 23 8
      哈哈android · AOSP
      2023-11-10 15:52 13 12
      2023-11-10 00:26 22 10