我在listview里面放了CheckBox控件,我勾选其中一个CheckBox的话,我一滑动listview.CheckBox勾选状态就消失了!!我把状态保存在一个hashmap里,还是存在这样的问题。
有人说,原因是 ListView滚动时自动调用 onCheckedChanged 导致的。http://hhulijin.iteye.com/blog/1538022
但我按照这个方法改了,还是不好使。求大神帮助。

解决方案 »

  1.   

    在getView里面对首次创建的CheckBox通过setId将position的值给这个CheckBox,并用hashMap或者ArrayList保存每个CheckBox的状态。然后再通过getId来获取当前CheckBox的ID值,并通过ID值来获取hasMap或者ArrayList中对应的CheckBox的状态值,并通过这个状态值改变当前CheckBox的状态。
      

  2.   

    对,确实是这样的,但是,我如何获得这个position呢我用的是ResourceCursorAdapter
      

  3.   

    CursorAdapter不是都有id吗?用id做key
      

  4.   

    http://blog.sina.com.cn/s/blog_95d0079401011d8v.html借鉴一下这个。
      

  5.   

    教你个办法   设置一个实体数组  实体里面再设置一个isCheck的bool型  监听你的checkbox状态 选中改变isCheck的值  这样就不会出现问题了
    附上新手交流群:254202293 今天刚刚创建 欢迎大家加入