我有一个Sqlite数据库文件,其中有1000条记录,我想用RecyclerView
显示。如果我获取数据并将它们存储在List
中,则需要10秒才能遍历所有数据。然后,当我将此List
分配给RecyclerView
数据适配器时,需要几乎10秒的时间来缓存数据以进行显示。所以它在整个过程中花了大约20多岁。
有没有什么可以直接将SQLite数据库db查询游标与RecyclerView连接,所以它可以逐个显示数据而不是检索所有1000个数据并缓存它?
答案 0 :(得分:1)
你应该对这些情况使用分页。你可以使用这样的查询:
SELECT * FROM YOUR_TABLE LIMIT 10 OFFSET 0 //for page #1
SELECT * FROM YOUR_TABLE LIMIT 10 OFFSET 10 // for page #2
并检查此网址以实现分页: How to implement endless list with RecyclerView?
答案 1 :(得分:0)
尝试显示加载更多的视图,例如当用户向下滚动然后加载数据时..
答案 2 :(得分:0)
我同意Manoj ....显示一些项目,并且当用户继续滚动加载并将下一个项目添加到列表并使用notifyDataSetChanged()
。这将帮助您