如何在Android中使用光标数据创建列表数组
如何使用光标数据创建列表数组(滚动时列表显示第一个字母)?
How can I create a list Array (the list display First Alphabet when scroll) with the cursor data?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
遍历
Cursor
中的每个元素,并将它们一一添加到ArrayList
中。(将
WhateverTypeYouWant
替换为您想要创建 ArrayList 的任何类型,并将WHATEVER_COLUMN_INDEX_YOU_WANT
替换为您想要从光标。)Go through every element in the
Cursor
, and add them one by one to theArrayList
.(replace
WhateverTypeYouWant
with whatever type you want to make aArrayList
of, andWHATEVER_COLUMN_INDEX_YOU_WANT
with the column index of the value you want to get from the cursor.)一个快速更正:上面的 for 循环跳过了光标的第一个元素。
要包含第一个元素,请使用以下命令:
One quick correction: the for loop above skips the first element of the cursor.
To include the first element, use this:
比 @imbrizi 的答案更好的是:
如果没有剩下任何东西,
moveToNext()
将返回 false,因此这会减少一些 SLOC,并且更容易看到。更好的是在循环之外获取列索引。
Even better than @imbrizi's answer is this:
moveToNext()
will return false if there isn't anything left, so this reduces the SLOC by a few, and is easier to see.Even better is to get the column index outside of the loop.
这个对我来说非常有效,因为我想要一个对象的数组列表:
只需创建一个 POJO
MyObject
并确保它有一个构造函数。This one worked really well for me because I wanted an arraylist of objects:
Just make a POJO
MyObject
and make sure it has a constructor.在 Kotlin 中你可以使用这个扩展:
并使用它:
In Kotlin you can use this extension:
and use it: