iPhone tableview分页

时间:2011-10-05 14:23:32

标签: iphone memory-management pagination tableview

首先,当我说我首先搜索这个答案时,请相信我......很多。我找到了许多例子,但没有一个表现与我需要的相似。虽然我本来可以用错误的关键词进行搜索,但我不相信。

这是我的问题:

我有一个表视图由一个返回大量数据的查询填充。该数据用于餐馆列表,价格评级和ID。但是数据库中有这么多的餐馆,它填补了内存并且最让应用程序崩溃了。 (我假设这是正在发生的事情,因为如果查询是有限的,代码工作正常,并且一直在其他页面上工作,我查询没有返回那么多数据的东西。)

我想要做的是为此页面的应用程序表视图添加分页。我没有看到如何使用“Show More”方法,或滚动到底部时自动加载,只是因为如果向下滚动到列表的末尾,您仍然会遇到相同的问题:填充内存。有没有办法进行类似网页的分页(如果它们不在第一页上),它们在顶部有一个“上一个”单元格,如果不在最后一页上,则在底部有一个“下一个”单元格?这些必须在当前视图中清除单元格并删除数据,因此我们不仅仅是添加会导致相同问题的数据,而是执行新查询来填充单元格。

当然,我不希望有人坐在这里为我写下所有代码。我需要的主要部分是如何为下一个和前一个单元格设置单元格。我应该能够在此之后计算出其余部分,但我不知道如何从当前表视图中清除数据。

感谢您提供任何帮助或建议。

1 个答案:

答案 0 :(得分:0)

我认为你可以通过显示更多方法或在滚动时加载,你说问题是你仍然加载一堆所有数据并且你的内存耗尽,但你可以避免这一点...一个选项是,保存到磁盘或只是释放未在表视图中显示的数据,您可以使用UITableView的indexPathsForVisibleRows方法查看哪些单元格可见,并且使用该信息您应该知道哪些数据可以安全地释放...您可以当您收到内存警告时,或者当单元格从屏幕滚动时(由您决定),请执行此操作...

希望这有帮助

丹尼尔