-1

我有一个列表视图,每次 30 条记录时从数据库加载数据,即第一个命中列表将包含 30 个项目,然后单击查看更多它将包含 60 个项目,依此类推。现在我希望在单击查看后,更多列表位置将从第 31 个开始位置和第二个命中列表位置应该从 61 开始,依此类推。列表将包含所有值,但每次单击查看更多时,起始位置都会有所不同。

4

2 回答 2

2

就个人而言,作为用户,我不太喜欢这种方法。例如,我认为 Google Play 的做法对用户更友好:到达列表末尾时,新项目会自动加载,提供几乎无缝的体验。

您可以通过将 OnScrollListener 添加到 ListView 并检查ListView.getFirstVisiblePosition()来确定用户是否到达列表末尾以及是否需要加载更多项目。使用 AsyncTask 尽早加载。相应地使用结果更新您的适配器。

于 2012-07-09T19:23:02.400 回答
0

实际上我的感觉并没有那么复杂。今天当我开始工作时,我设法得到了我预期的列表。每次将新行添加到列表时,我只需将列表开始选择设置为新添加的第一项通过使用 resultList.setSelection(limitVal - 29) ..here limitVal 将在每次单击视图时增加 30,因此此操作将使我的列表视图从预期位置开始。

于 2012-07-10T07:23:40.017 回答