android listview中的复选框有问题

elt*_*lto 2 checkbox android listview

我有一个带有自定义BaseAdapter的列表视图,每行包含一个复选框和三个textview.我正在使用Layoutinflater从xml文件中扩充此行.但是,每次我选中一个复选框时,在整个列表中都会检查许多其他复选框,而我想检查的原始复选框有时会自行检查,有时则不会.

每次用户选中一个复选框时,我都会将该复选框附加的唯一值存储在集合中.下次调用getView方法时,我会根据复选框的值是否已经在集合中,在getView()内部返回视图之前手动选中/取消选中该复选框.但尽管如此,它仍然标记了这些复选框,即使这些复选框的checkedchangelistener没有启动.我很怀疑这是因为在getView中重复使用了视图,但是不知道什么是让这整个工作变得有效的好方法.

SAL*_*MAN 6

避免if(convertView == null)和其他整个部分它肯定适合你.谢谢.