【发布时间】:2011-01-10 08:19:48
【问题描述】:
我有一个带有自定义 BaseAdapter 的列表视图,每行包含一个复选框和三个文本视图。我正在使用 Layoutinflater 从 xml 文件中扩充这一行。但是,每次我选中一个复选框时,都会在整个列表中选中许多其他复选框,而我想要检查的原始复选框有时会自行选中,有时不会。
每次用户选择一个复选框时,我都会将该复选框附加的唯一值存储在一个集合中。下次调用 getView 方法时,我根据复选框的值是否已经在集合中,在返回 getView() 中的视图之前手动选中/取消选中复选框。但是尽管这样做了,它仍然标记了这些复选框,即使这些复选框的 checkedchangelistener 没有启动。我对此表示怀疑,因为视图在 getView 中被重用,但不知道什么是让整个事情正常工作的好方法。
【问题讨论】:
-
您能否在此处包含您的 getView 方法。我怀疑问题就在那里。
-
stackoverflow.com/questions/5715630/… 这已经讨论过了,你可以通过它。谢谢。