我有一个Android ListView,其行包含一个复选框,每行有四个文本视图。这是一个多选列表视图。默认情况下,列表视图以已检查的某些行开头。您可以选中或取消选中任何行。当用户单击该行(而不是复选框)时,所有行都会将其复选框恢复为默认值。
更新
我使用默认ListView
与SimpleAdapter
和ArrayList<String, Object>
答案 0 :(得分:0)
因此,在使用我的代码之后,我知道导致默认值恢复的原因以及如何停止它。
发布了默认值恢复,因为项目正在重新绘制。由于点击突出显示,并且(de)激活列表项,因此重新绘制。为什么它发生在所有列表项之外是超出我的,但这导致列表视图使用其默认值重新绘制它们。
这意味着要阻止这种情况发生,我应该修改源列表,使其在单击时被“选中”(如果已经选中,则“未选中”)。然后,当重新绘制时,将适当地选中(或取消选中)复选框。
答案 1 :(得分:0)
我认为如果您可以使用CheckedTextview而不是Checkbox,它将保持其已选中或未选中状态,使用Checkbox我们需要编写代码以保持已选中/未选中状态