我正在学习NSFetchedResultsController
,有一件事让我困惑。NSFetchedResultsController
与UITableView
结合使用,以帮助获取性能,并根据UITableView
中当前显示的内容计算要获取哪些记录。
当你使用UITableView
索引(如在地址簿应用程序的首字母)不意味着整个数据集将被加载,以确定所有部分的所有首字母?
索引的使用是否会阻止NSFetchedResultsController
对它加载的内容进行智能处理?
NSFetchedResultsController
从sectionKeyPath
构建索引。可以假设,为了获取这个键的值,将执行一次获取操作,只获取该键的唯一值,而不是接近完整数据集的任何值。例如,它可以这样做,使NSFetchRequest
的结果类型为NSDictionaryResultType
, returnsDistinctResults
设置为YES
, propertiesToFetch
仅设置为sectionKeyPath
。