提前致谢。
我正在开发一个汽车评论应用程序,用户可以登录并显示数据库中的所有评论。所有数据首先存储在MYSQL数据库中。我使用json连接到MYSQL数据库和SQLiteDatabase。但问题是,登录应用程序屏幕后巨大的没有。数据来自服务器,它正在我们的SQLite数据库中插入。
之后,它将从数据库中检索并在列表视图中显示在应用程序屏幕中,显示列表视图中的所有数据需要更长的时间。在这种情况下,我使用SimpleCursorAdapter从数据库中检索所有数据。
有没有像分页这样的方法来更快地进行数据检索。 请提供一些源代码帮助我。
答案 0 :(得分:3)
您可以使用以下内容:
第1页:
SELECT * FROM YOUR_TABLE LIMIT 20 OFFSET 0
第2页:
SELECT * FROM YOUR_TABLE LIMIT 20 OFFSET 20
答案 1 :(得分:3)
您可以使用Asynchronous任务的概念以及SimpleCursorAdapters。
“AsyncTask可以正确,轻松地使用UI线程。该类允许执行后台操作并在UI线程上发布结果,而无需操纵线程和/或处理程序。”
以下是您可以做的事情:
1)仅检索第一个查询中的第1个10/15项。 2)将另一个查询作为后台任务触发,而用户正在检出前10/15项。
这肯定会让用户体验更快
答案 2 :(得分:1)
使用LIMIT
中的MYSQL
关键字,您可以实现分页。
LIMIT
允许您控制查询返回的行数:
示例:
显示前10条记录
SELECT * FROM Student LIMIT 10 //for first time
显示10到20之间的行
SELECT *FROM Student LIMIT 9, 10 //after showing the records first time
LIMIT
适用于SQLiteDatabase
答案 3 :(得分:1)
如果有人已经实施,请提供有关如何实施分页的逻辑/示例源代码。
请参阅CommonsWare EndlessAdapter
。