11

Core Data が概念的にもコード的にもどのように機能するかを理解するのに苦労しています。

コーディネーターとコンテキストがあることがわかりました。また、状態管理があることもわかります。それらはどのように連携しますか?

たとえば、画像といくつかの文字列をオブジェクトとして保存する方法がわかりません。

後で画像と文字列を取得したいとしましょう。私は何をしますか?

状態をどこに保存しますか? どのように?

私のコードはどのように見えますか? 私は本当に混乱しているので、ここで最低限のコードサンプルをいただければ幸いです。

4

3 に答える 3

24

これらは私が見つけた最高のチュートリアルの一部です:

あなたの質問について:

コーディネーターとコンテキストがあることがわかりました。また、状態管理があることもわかります。それらはどのように連携しますか?

永続ストア コーディネーターは、SQLlite DB や XML ファイルなど、データが実際に保存されている場所を管理します。コーディネーターは抽象化されているため、バックエンドのストレージのタイプを気にする必要はありません。

管理対象オブジェクト コンテキストは、永続ストア コーディネーターと対話する方法です。それをスクラッチパッドと考えてください。管理オブジェクト コンテキストから管理オブジェクトを作成および変更します。

たとえば、画像といくつかの文字列をオブジェクトとして保存する方法がわかりません。後で画像と文字列を取得したいとしましょう。私は何をしますか?

上記のチュートリアルのいくつかに目を通してみると、管理対象オブジェクト コンテキストからオブジェクトを引き出す方法がわかります。NSString は、次のように、管理対象オブジェクトの文字列属性として単純に格納されます。

[managedObject setValue:@"TestString" forKey:@"SomeStringProperty"];

以前にコアデータに画像を保存したことがないため、画像についてはよくわかりません。シリアル化できるものはすべて、変換可能な属性として保存できることを知っています。Core Data への UIImage の保存に関する投稿を次に示します。

状態をどこに保存しますか? どのように?

管理対象オブジェクトのコンテキストで「save」メソッドを呼び出すだけです。そのようです:

[context save:&error]
于 2010-07-28T21:06:47.973 に答える
2

Apple のCore Data チュートリアルを参照してください。

于 2010-07-28T18:54:30.137 に答える
1

作業を開始するために、Apple から入手可能なドキュメントソースコード数多くあります。

于 2010-07-28T18:55:26.560 に答える