将观察者添加到NSArrayController以监视值的更改

时间:2015-02-20 02:09:35

标签: objective-c cocoa core-data

我有NSArraycontroller绑定到NSTableView,NSTableView上的值可以编辑。我添加了一个观察者来检测NSArraycontoller的值何时因编辑而有变化值。

这是我的代码:

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

我可以检测到值何时发生变化,我可以获得新值,但我没有从通知中获取旧值。

- (void)mocDidChangeNotification:(NSNotification *)notification
{

    NSLog(@"changes %@", [notification.userInfo valueForKeyPath:NSUpdatedObjectsKey]);

}

控制台输出:

changes {(
    <Categories: 0x6000000a27c0> (entity: Categories; id: 0x40000b <x-coredata://3C4A59E5-F730-4DF0-BF7F-CF2A88A2979F/Categories/p1> ; data: {
    category = newCategory;
})
)}

你们中的任何一个人都知道如何跟踪旧值?

我非常感谢你的帮助。

0 个答案:

没有答案