3

コアデータを処理するモデルがあり、現在NSFetchedResultsControllerを使用して、コアデータに変更があった場合に通知を受け取ります。私はこれからUITableViewを駆動していません、そしてフェッチされた結果コントローラーのAPIは少し厄介です。もっと簡単なものに交換したいです。私の質問はこれです。NSFetchedResultsControllerはCoreDataの変更をどのようにリッスンし、より優れたAPIの背後でそれを複製するにはどうすればよいですか?iOS5以降を使用しています

4

1 に答える 1

3

少なくとも、 MOC から次のような通知を受け取ることができるようです。

Core Data uses these string constants as keys in the user info dictionary in aNSManagedObjectContextObjectsDidChangeNotification notification.

NSString * const NSInsertedObjectsKey;
NSString * const NSUpdatedObjectsKey;
NSString * const NSDeletedObjectsKey;
NSString * const NSRefreshedObjectsKey;
NSString * const NSInvalidatedObjectsKey;
NSString * const NSInvalidatedAllObjectsKey;

アプローチとしては、Apple が提供してくれる完全なプロトコルをスタブ化することから始めて、必要に応じて実装と小さなテストを追加することもできます。

于 2012-04-25T20:55:11.137 に答える