1

我实现了一个类似于NSFetchedResultsController- 我称之为的类DKDataArray。不像NSFetchedResultsController它不从数据库中获取对象,而是从另一个对象的关系中获取它们。

我现在想以一种监视其获取对象的更改并将更改传播给委托的方式对其进行扩展——就像这样NSFetchedResultsController做一样。

这是我想支持的委托方法:

@protocol DKDataArrayDelegate

@optional
- (void)dataArray:(DKDataArray *)dataArray
  didChangeObject:(id)anObject
          atIndex:(NSInteger)index;

@end

我怎样才能做到这一点?

提前致谢!

4

1 回答 1

1

您可以注册NSManagedObjectContextObjectsDidChangeNotification托管对象上下文。从文档中:

当托管对象上下文中包含的对象的属性值发生更改时发布。通知在 期间发布 processPendingChanges,在处理更改之后,...
通知对象是托管对象上下文。userInfo 字典包含以下键:NSInsertedObjectsKeyNSUpdatedObjectsKeyNSDeletedObjectsKey

于 2013-09-03T17:50:26.270 回答