NSFetchedResultsController 是不是应该始终与 Core Data 一起使用?
Posted
技术标签:
【中文标题】NSFetchedResultsController 是不是应该始终与 Core Data 一起使用?【英文标题】:Should a NSFetchedResultsController always be used with Core Data?NSFetchedResultsController 是否应该始终与 Core Data 一起使用? 【发布时间】:2014-04-17 20:29:05 【问题描述】:我正在创建一个简单的笔记应用程序,并且我最近刚刚学习了 Core Data 的基础知识(而且我一般是初学者)。
现在,在 Core Data 的教程 I learned the basics 中,他们根本没有使用 NSFetchedResultsController
,我也在使用 Apple sample code 学习 Core Data,他们在那里使用它。
我想知道我是否应该深入研究并学习如何使用NSFetchedResultsController
还是太高级了?
【问题讨论】:
【参考方案1】:这取决于你真正想做什么!
如果您想使用过滤器或顺序显示同一实体的对象列表,那么是的,它非常适合。 如果你想要一个实体对象的属性值发生变化的表单,那就不行!
从类的名称来看,它用于获取结果的列表,因此如果您只处理一个对象(即上述表单案例),那么它不是很有用。
在UITableView
或UICollectionView
中使用它的主要好处是,当更改、插入或删除与NSFetchRequest
的谓词匹配的对象时,您会收到通知。
【讨论】:
我有一个名为 Note 的实体,其属性名为 content...我只想保存和获取内容并将其显示在表格视图上,所以我不应该使用 NSFetchedResultsController 对吗? @Rich @user3412425 you probably want aNSFetchedResultsController
to display the list of notes, but when selecting a Note
alter that object directly with the attribute accessor methods :)以上是关于NSFetchedResultsController 是不是应该始终与 Core Data 一起使用?的主要内容,如果未能解决你的问题,请参考以下文章