- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
NSManagedObjectContextObjectsDidChangeNotification 是否有可能仅在特定实体更改时收到通知?
我想在我的联系信息或头像发生变化时更新我的 View ,但是使用 NSManagedObjectContextObjectsDidChangeNotification 每次数据库发生变化时我都会收到通知。
可以用 NSManagedObjectContextObjectsDidChangeNotification 做到这一点吗?
最佳答案
我认为不可能只针对特定实体触发。但是,该通知确实提供了有关更改了哪些对象的信息。通知包含一个字典 (userInfo),其中包含 3 个键:
您可以遍历这些数组的内容并确定您的特定对象是否已更改。粗略的概述如下:
- (void) handleObjectsChangedNotification:(NSNotification*) notification {
// Iterate over all of the deleted objects
for (NSManagedObject* object in notification.userInfo[NSDeletedObjectsKey]) {
}
// Iterate over all of the new objects
for (NSManagedObject* object in notification.userInfo[NSInsertedObjectsKey]) {
}
// Iterate over all of the modified objects
for (NSManagedObject* object in notification.userInfo[NSUpdatedObjectsKey]) {
}
}
关于ios - 一个实体的 NSManagedObjectContextObjectsDidChangeNotification,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25923663/
我有一个使用 NSPersistentDocument 的 Mac 应用程序。我想在删除对象时收到通知以使用 Core Data 保存此信息。所以我在监听 NSManagedObjectContext
当我向 NSManagedObjectContext 添加新的 NSManagedObject 实例时,如下所示: NSManagedObject *newObject = [NSEntityDesc
我希望有人能帮助我... 我的代码是这样的 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(make
我正在开发一个购物 list 应用程序,在一些情况下,我需要监视对实体的更改,并通过对其他实体进行更改来响应。例如: 当添加新的商店实体时,我需要创建相关的过道实体。 当食品的数量更改为 0 或 >0
NSManagedObjectContextObjectsDidChangeNotification 是否有可能仅在特定实体更改时收到通知? 我想在我的联系信息或头像发生变化时更新我的 View
我想知道一个对象何时被插入到我的 Core Data MOC 中,以及何时将其添加到另一个具有关系的对象中。 因此,我观察 NSManagedObjectContextObjectsDidChange
我在应用程序中使用 CoreData 并依赖于 NSManagedObjectContextObjectsDidChangeNotification。我已经为所有实体创建了 NSManagedObje
我对 NSManagedObjectContextObjectsDidChangeNotification 有一个问题,在插入一个对象然后执行回滚(因此它被删除)之后,关于删除的更改通知被调用两次。这
我遇到了这个运行时错误,它在刷新数据或启动时(从服务中获取并保存在 coreData 中)发生了 50% 的时间。我已经查看了关于这个问题的几乎所有解决方案,但其中大部分都在 Obj-C 中,但我是
在我的许多 UIViewControllers 中,我根据数据状态更新某些控件。例如,我可能在 UITableViewController 上有一个编辑按钮,它应该只在有一个或多个项目时启用。或者我想
我正在我的应用程序中使用 NSManagedObjectContextObjectsDidChangeNotification 通知,我现在已经知道如何使用它了。因为我使用了下面的代码来添加观察者..
是否可以在不再次触发处理程序的情况下更改 NSManagedObjectContextObjectsDidChangeNotification 处理程序中托管对象的属性?我从我们的服务器获取数据,Re
我正在使用 Core Data 编写我的第一个综合应用程序,我想看看跟踪各种对象更改/更新/删除的最佳方法是什么。例如,我有一个 Notes 实体和一个 Location 实体,它们之间是一对一的关系
文档说; NSUpdatedObjectsKey已更新对象集的键。 NSRefreshedObjectsKey在此上下文范围内已刷新但未弄脏的对象集的键。 这到底是什么意思。我只想知道发生了什么变化,
我是一名优秀的程序员,十分优秀!