我有一个带有自定义 BaseAdapter 的 ListView ,每行包含一个复选框和三个 TextView 。我正在使用 Layoutinflater 从 xml 文件中扩充此行。然而,每次我选中一个复选框时,整个列表中的许多其他复选框都会被选中,而我想要选中的原始复选框有时会被选中,有时却不会。
每次用户选择一个复选框时,我都会将该复选框附加的唯一值存储在一个集合中。下次调用 getView 方法时,我根据复选框的值是否已经在集合中,在返回 getView() 内部的 View 之前手动选中/取消选中复选框。但是尽管这样做了,它仍然标记了那些复选框,即使这些复选框的 checkedchangelestener 没有启动。我对此表示怀疑,因为 View 在 getView 中得到了重用,但不知道什么是让整个事情正常工作的好方法。
最佳答案
避免 if (convertView==null) 和 else 整个部分 它一定会为你工作。谢谢。
关于android - android listview 中的复选框有问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4644829/