为什么要使用NSFetchedResultsController?

Ans*_*ari 22 iphone core-data nsfetchedresultscontroller nsfetchrequest

核心数据在NSManagedObjectContext类中提供方法"executeFetchRequest",我们可以使用它从表中获取数据并以任何方式使用它.

现在有另一种方法,使用NSFetchedResultsController并将其提供给UITableView以从表中获取和数据.

我现在的问题是:

  • 哪种方式更快?,我的意思是性能明智,哪一个最好?

  • NSFetchedResultsController是否仅与UITableViews一起使用?

  • NSFetchedResultsController的优点和缺点是什么?

  • 最后一点,"为什么我们使用NSFetchedResultsController",什么使它比任何其他方式更好.

Tec*_*Zen 40

最后一点,"为什么我们使用NSFetchedResultsController",什么使它比任何其他方式更好.

FRC类旨在自动处理与为表提供复杂和动态数据相关的所有开销.

如果您只拥有一个简单的,一个表格,其数据永远不会改变,那么FRC就没有任何优势.你只需要一次抓取就可以了.然而,如果数据是在UI(用户重新排列,删除或添加),或通过代码被改变任一(例如,数据被从服务器更新)的FRC提供的机制来处理一切常数变化,并确保该表准确地反映那些变化.

哪种方式更快?,我的意思是性能明智,哪一个最好?

使用fetch或FRC没有重大的性能差异,因为它们都使用相同的提取机制从持久性存储中获取数据.如果您有复杂的动态数据,那么使用FRC比手动复制其功能更快.

NSFetchedResultsController的优点和缺点是什么?

往上看.

NSFetchedResultsController是否仅与UITableViews一起使用?

是的,它真的只对表有用.

  • NSFetchedResultsController也是为UICollectionView设计的. (4认同)