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
      相关问题
      资质平平 · Android
      2025-02-20 09:14 92 100
      尖沙咀-段坤 · 项目
      2025-01-06 23:39 18 2
      雅澤yaduo · 领券联盟
      2025-01-03 20:39 37 50
      呆瓜小董 · webview
      2024-11-30 18:02 68 20
      阿肥 · 鸿蒙next
      2024-10-25 18:07 35 100
      尖沙咀-段坤 · 安卓
      2024-09-11 11:03 31 2
      YanLQ · AOSP
      2024-08-10 11:57 35 100
      断点 · vue
      2024-08-08 10:05 79 30