gpt4 book ai didi

android - 未选中项目时,Listview.getCheckedItemPositions() 未返回正确结果

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:15:09 25 4
gpt4 key购买 nike

我使用 SparseBooleanArray 获取 ListView 中选中列表项的位置:

// lv is my listview
final SparseBooleanArray checkedItems = lv.getCheckedItemPositions();

这在我检查列表项时工作正常。但是当我取消选中 ListView 中的项目时,它的大小并没有减少。它保持原样。

让我解释一下发生了什么:
我首先选择 3 个列表项,我得到 checkedItems 的大小为 3。但是当我从列表中取消选中一个项目时,它的大小不会更改为 2。它仍然是 3。

需要做什么?请帮帮我。

石头

最佳答案

SparseBooleanArray将整数映射到 bool 值。 size() 方法不返回包含的 true 项目数,它返回存储的项目数。其中一些项目可能是 false

如果你想知道选中的项目数,你可以遍历 SparseBooleanArray,你可以通过在选中状态改变时调用 isItemChecked() 来跟踪选中的项目数,或者如果你是在 API 11+ (Honeycomb) 上,您可以调用 getCheckedItemCount()

关于android - 未选中项目时,Listview.getCheckedItemPositions() 未返回正确结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6587237/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com