Android ListView根据id而不是位置检查项目

Android ListView根据id而不是位置检查项目,android,listview,android-listview,Android,Listview,Android Listview,AndroidListView根据元素位置显示选中的元素。所以,如果我在顶部添加新元素,同时选中一些元素,或者从中间删除元素,错误的元素将显示为选中 我有权访问检查项目ID列表 是否可以更新ListView以仅将选中的项目显示为选中项目?在哪种情况下我应该这样做(我应该覆盖哪种方法) 你可以试试这个:: 为此,您可以为listview使用自定义适配器,在listview适配器中,有一个GetView()方法可用于实现您想要的功能 这里是更多信息和信息的链接 希望能有帮助 这是旧安卓版本中的一个b

Android
ListView
根据元素位置显示选中的元素。所以,如果我在顶部添加新元素,同时选中一些元素,或者从中间删除元素,错误的元素将显示为选中

我有权访问检查项目ID列表

是否可以更新
ListView
以仅将选中的项目显示为选中项目?在哪种情况下我应该这样做(我应该覆盖哪种方法)

你可以试试这个::

为此,您可以为listview使用自定义适配器,在listview适配器中,有一个GetView()方法可用于实现您想要的功能

这里是更多信息和信息的链接


希望能有帮助

这是旧安卓版本中的一个bug。我没能在那里修好。在较新的Androids中,它不存在。

显示您的代码。请在适配器的getView中设置一个条件,以获取您的ID并执行您想要的操作。您可以为对象设置一个布尔值,以了解它是否已被选中not@Tsunaze最后一个元素有一个问题:我在adapter getView中看不到最后一个操作的效果。阿曼斯回答下的评论中的详细信息。除了一件事外,它是有效的:在
getView
上,我之前有一个动作的状态。例如:当我选中第一个项目时,所有项目都标记为未选中。当我选中第二项时,第一项标记为已选中,第二项标记为未选中。当我取消选中第二项时,第一项和第二项都标记为已选中。这可能是您的检查条件中的问题。我需要看看你的代码。