iphone - 找出哪个实体发生了变化(NSManagedObjectContextObjectsDidChangeNotification)

标签 iphone objective-c ios notifications

我希望有人能帮助我...

我的代码是这样的

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(makeSomeThing:) name:NSManagedObjectContextObjectsDidChangeNotification
         object:nil];

我想知道哪个实体发生了变化,无论是删除还是更新。只是 哪个实体... 我想做那样的事

-(void)makeSomeThing: (NSNotification *)noti
{
    if(entity == CarEntity)
        NSLog(@"makeSomeThing");
}

我不知道是什么实体发生了变化...我知道有一个方法[noti userInfo] 但是 我不知道该怎么办。

谢谢,对不起这个可怕的英语 :)

最佳答案

[noti userInfo]NSManagedObjectContextObjectsDidChangeNotification 返回的 NSDictionary 可能包含键 NSInsertedObjectsKey、NSUpdatedObjectsKey 和 NSDeletedObjectsKey。所以 [[noti userInfo] objectForKey:NSInsertedObjectsKey] 会给你插入的对象;其他两个键的工作方式类似。

请注意,可以在一个通知中插入、更新和/或删除多个对象。

关于iphone - 找出哪个实体发生了变化(NSManagedObjectContextObjectsDidChangeNotification),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5280082/

相关文章:

objective-c - 从给定的 NSColor 生成 NSGradient

ios - undefined symbol _RCTRegisterModule

ios objective-c 常量 CGFloat *

ios - 对 UITextView、UIButton 和 BOOL 感到困惑

iphone - 从 ALAsset url iOS 获取视频 NSData

iphone - 核心数据:NSLog 输出不显示 "Fields"

iphone - 如何为应用程序商店起一个长名称,然后在图标下起一个短名称?

css - Safari iPhone 返回时有时会增加字体大小

objective-c - 在 RestKit 中序列化嵌套图像(Rails 后端)

ios - 从指定的初始化程序调用超静态方法