2

ドキュメントを1時間読んでいますが、まだポイントがわかりませんNSFetchedResultsController。の代替品UITableViewControllerですか?またはUITableViewController使用していNSFetchedResultsControllerますか?NSFetchedResultsControllerデータソースですか?それは何ですか?

4

1 に答える 1

9

NSFetchedResultsControllerテーブルにデータを提供するときに実行する必要のあるすべてのCoreDataフェッチ関連関数をバンドルします。テーブルに関連する多くの一般的な関数をカプセル化するため、手動で管理する必要はありません。これは、テーブルビューコントローラーとCoreDataベースのデータモデル間のソフトウェアインターフェイスとして機能します。

テーブルビューには、構造化リストで提供されるデータが必要です。大量のデータを管理および表示する必要があります。データ自体が舞台裏で変更された場合は、表示を更新する必要があります。NSFetchedResultsControllerこれをすべて支援する:

  1. フェッチによって実行されるすべての順序付けと並べ替えに加えて、セクションを自動的にフェッチして管理するため、セクションに対して個別にフェッチを実行する必要はありません。
  2. フェッチ結果をキャッシュして、テーブルの表示を高速化します。
  3. Core Dataグラフを監視し、テーブルがデータをリロードする必要がある場合は、デリゲート(通常はtableviewコントローラー)に通知します。これは、URLからデータをロードする場合などに非常に役立ちます。データが絶えず変化している場合は、を使用しない場合は常に結果を取得して確認する必要がありますNSFetchedResultsController

使用する必要はありません。必要に応じて、これらすべてを手作業で行うことができます。データモデルでCoreDataを使用しない場合は、使用しません。

于 2010-04-10T12:38:27.930 に答える