【发布时间】:2016-02-13 11:53:19
【问题描述】:
我有一个带有复选框的可扩展列表视图。当我单击一个孩子时,会出现一个警报对话框,然后我选择数量,然后孩子的 textView 会发生变化。但是当我向下滚动列表并且这个孩子从视图中消失时,列表忘记了更改的 textview 并设置了旧的。是什么原因?
【问题讨论】:
-
将可扩展列表和代码放入您的点击监听器中
-
您需要将数量存储在列表中,以便每当重新创建视图时,它都会从列表项中引用。并且还使用 setTag 和 getTag
-
你使用 ViewHolder 模式吗?当列表项再次可见时,列表会不断重新创建您的列表项,因此您必须根据位置保存您的项目并在它们已经创建时加载它们,而不是让适配器再次创建它们。
-
@Gil 不,我不使用 ViewHolder。我应该吗?
-
是的。 ViewHolder 模式应该为您提供对象/列表行项目的重用机制。这并不难,如果您需要帮助,请通知我。
标签: android checkbox textview expandablelistview