NSFetchedResultsController 更改跟踪
Posted
技术标签:
【中文标题】NSFetchedResultsController 更改跟踪【英文标题】:NSFetchedResultsController change tracking 【发布时间】:2013-04-18 10:35:32 【问题描述】:我知道 NSFetchedResultsController
跟踪来自 bg 上下文的更改(即合并更改)。
它是否也跟踪主上下文的变化?
即如果我有一个 NSFetchedResultsController
获取 Person
对象,并且我使用“编辑人员”视图来更改传入的实际 Person
,控制器会看到更改吗?
【问题讨论】:
控制器将看到更改,即使它尚未持久化。 【参考方案1】:获取的结果控制器仅跟踪其自身上下文中的更改。如果你保存 对背景上下文进行更改,然后将更改合并到主上下文 FRC 在主上下文上会看到这些变化(通常,见下文)。但是说它“从背景环境跟踪变化”是误导性的。
FRC 是否看到非持久性更改,取决于获取请求中includesPendingChanges
的设置。默认情况下,此值为YES
,除非
您将resultType
的值设置为NSDictionaryResultType
。在这种情况下,FRC 返回
只有持久存储的状态,更改跟踪根本不起作用。
【讨论】:
以上是关于NSFetchedResultsController 更改跟踪的主要内容,如果未能解决你的问题,请参考以下文章