0

簡単にできるリストアプリケーションがあります。タスク用にプログラムで間隔をあけて動的に生成されたテキスト フィールドを使用します (いくつかのカスタム アニメーションや使用したいものがあるため、UITableView は使用しませんでした)。

アプリでは、ユーザーは複数のリスト (家庭、職場、学校など) をそれぞれ独自のタスクで作成できます。

Core Data を使用して情報を保存したい

情報を保存するのは簡単ですが、コア データ オブジェクト (リストとタスク) を更新するときに行き詰まります。また、Core Data を使用して、特定のタスクを特定のリストに関連付ける方法。

私のデータモデル

何か明確にする必要がある場合はお知らせください。

4

3 に答える 3

0

あなたの最善の策はNSFetchedResultsControllerです。Xcode テンプレートで提案されているパターンとまったく同じように使用できます (新しいプロジェクトのマスター詳細を作成し、「ユーザー コア データ」をチェックすることで確認できます)。

Task名前の文字列属性と完了などのブール属性を使用して、オブジェクトモデル(エンティティ)をデバイスできますNSNumber。注文にはタイムスタンプとシリアル番号をお勧めします(NSOrderedSet信頼性が低いと思います)。エンティティListは と対多の関係を持つ必要がありTaskます。かなり簡単です。

List <---->> Task

唯一の違いは、正しいオブジェクトを見つけることです。これは、 を使用できないためobjectAtIndexPathです。そのためにインデックスを使用できますfetchedResultsController.fetchedObjects。オブジェクトが期待どおりに並べられていることを確認してください。

于 2013-10-15T06:46:03.760 に答える
-1

まず、プロジェクトに Core Data を使用するのは良い考えかどうかを考えてください。モデルが軽量でシンプルな場合は、plist を使用する方がよいでしょう。Core Data を選択した場合は、次の 2 つのルールを覚えておいてください。

  1. 各スレッドは個別に所有していNSManagedObjectContextます。
  2. そのスレッドでのみコンテキストを使用して操作を実行します。

今は最適化について心配する必要はありません。ストレージを更新するあらゆるスキームを実現します。動作することを確認してください。そして、他の更新方法を試してみてください。

于 2013-10-15T06:56:07.553 に答える