私の理解では、NSFetchedResultsControllerは、管理対象オブジェクトコンテキストからテーブルビューコントローラーにデータを同期する役割を果たします。ここでの代表者の役割は何ですか?アップルのドキュメントを読みましたが、わかりません。問題を簡潔かつ要点まで詳しく説明してください。
1 に答える
簡単に言えば、デリゲート メソッドを使用すると、NSFetchedResultsController (NSFRC) 内の管理対象オブジェクトに対してアクションが実行されたときに、必要に応じてテーブル ビューを更新できるということです。
たとえば、NSFRC の結果にあるオブジェクトを削除すると、適切な行を削除してテーブルを更新できます。
そう...
テーブルビューに
controllerWillChangeContent:
変更することを伝えることをお勧めします(したがって、それを呼び出す必要がありますbeginUpdates:
)controller:didChangeObject:atIndexPath:forChangeType
管理対象オブジェクトが変更 (追加、削除、移動など) されたときに呼び出されます。deleteRowsAtIndexPaths:withRowAnimation:
必要に応じてテーブル ビューを更新します (たとえば、管理対象オブジェクトが削除された場合に呼び出します)。controller:didChangeSection:atIndex:forChangeType
上記と似ていますが、テーブル ビュー セクション用です。controllerDidChangeContent
変更が完了すると呼び出されます。endUpdates:
このメソッドで終了すると、テーブルビューでも呼び出されます
これが多少役立つことを願っています。