如何保持 gridview(或 ListView)项目被选中并且不会因为回收而丢失选择
How to keep gridview (or ListView) item selected and not lose the selection because of recycling
我经常 运行 遇到让我在 listView(当前是 gridview)中选择的项目保持选中状态的问题。我正在使用 BaseAdapter。我对 holder 模式的工作原理有一个大概的了解,但我不太确定应该如何保存每个特定视图的状态。即是否被点击的状态。我应该创建另一个 class 作为模型还是应该使用 getTag 和 setTag?
谢谢您的帮助。
干杯
诀窍是不用担心保存视图的状态。相反,save/change 基础数据的状态。因此,如果选择了一个位置,则将该位置放在一个数据结构中(通常是一个 SparseBooleanArray)。当此位置重新出现时,即为此位置调用 getView() 时,相应地更新视图属性。
我经常 运行 遇到让我在 listView(当前是 gridview)中选择的项目保持选中状态的问题。我正在使用 BaseAdapter。我对 holder 模式的工作原理有一个大概的了解,但我不太确定应该如何保存每个特定视图的状态。即是否被点击的状态。我应该创建另一个 class 作为模型还是应该使用 getTag 和 setTag? 谢谢您的帮助。 干杯
诀窍是不用担心保存视图的状态。相反,save/change 基础数据的状态。因此,如果选择了一个位置,则将该位置放在一个数据结构中(通常是一个 SparseBooleanArray)。当此位置重新出现时,即为此位置调用 getView() 时,相应地更新视图属性。