我有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;
})
)}
你们中的任何一个人都知道如何跟踪旧值?
我非常感谢你的帮助。