检查 NSManagedObject 的对象图的变化
Posted
技术标签:
【中文标题】检查 NSManagedObject 的对象图的变化【英文标题】:Check for changes in NSManagedObject's object graph 【发布时间】:2014-12-04 22:25:22 【问题描述】:在使用 NSManagedObjects 时,有没有办法知道对象本身或其任何引用的对象是否发生了变化,而无需遍历所有需要的对象进行检查?如果我调用hasChanges
或changedValues
,这些属性仅反映对象本身的更改,但不会反映对象引用对象中的任何值发生更改。
【问题讨论】:
【参考方案1】:最简单的方法是监听通知。如果您收听NSManagedObjectContextObjectsDidChangeNotification
,您将在每次发生变化时收到通知。
如你所料,这很健谈。
您还可以向NSManagedObjectContext
询问所有已更改的对象,然后使用NSPredicate
过滤该数组以检查您关心的对象。
【讨论】:
感谢第二种解决方案适用于我的情况。不太喜欢它,但它确实有效。以上是关于检查 NSManagedObject 的对象图的变化的主要内容,如果未能解决你的问题,请参考以下文章
iPhone核心数据可以缓存NSManagedObject吗?