显示来自 Core Data 的大量数据
Displaying a large amount of data from Core Data
我有这样一个任务摆在面前:数据库中有10000多条记录,我需要在table视图中显示它们,但我不能把所有10000条都取出来存储在array 如何组织工作,例如,当在 table 视图中滚动 100 条记录时,从数据库中下载接下来的 100 条条目。
我找到了 fetchLimit 和 fetchOffset 之类的东西,但我仍然不明白如何将它们用于我的任务。
你会告诉我什么?
我相信如果您正在使用 Core Data 并且您需要 UITableView
,您应该勇敢地使用 NSFetchedResultsController
。
来自 Apple 文档。
You use a fetched results controller to efficiently manage the results
returned from a Core Data fetch request to provide data for a
UITableView object.
通过使用这种方法,您将默认使用缓存来提高性能。此外,当核心数据中的某些记录将被更改或添加时,您将动态更新 UITableView
。
另外,要按部分获取数据,您可以修改 NSFetchRequest
并为每个请求设置 fetchLimit
。
Example 的简单 NSFetchedResultsController
实现。
我有这样一个任务摆在面前:数据库中有10000多条记录,我需要在table视图中显示它们,但我不能把所有10000条都取出来存储在array 如何组织工作,例如,当在 table 视图中滚动 100 条记录时,从数据库中下载接下来的 100 条条目。
我找到了 fetchLimit 和 fetchOffset 之类的东西,但我仍然不明白如何将它们用于我的任务。
你会告诉我什么?
我相信如果您正在使用 Core Data 并且您需要 UITableView
,您应该勇敢地使用 NSFetchedResultsController
。
来自 Apple 文档。
You use a fetched results controller to efficiently manage the results returned from a Core Data fetch request to provide data for a UITableView object.
通过使用这种方法,您将默认使用缓存来提高性能。此外,当核心数据中的某些记录将被更改或添加时,您将动态更新 UITableView
。
另外,要按部分获取数据,您可以修改 NSFetchRequest
并为每个请求设置 fetchLimit
。
Example 的简单 NSFetchedResultsController
实现。