私はCookbookアプリケーションを作成しています。作成したクラス(レシピクラス)のデータを保存する方法については何も見つかりませんでした。プロパティリストオブジェクトではないObjective-Cオブジェクトを保存するにはどうすればよいですか、プロパティリストよりも良い方法がありますか?
-(void) writeToFile:(NSString *)file atomically:(BOOL)atomic{
}
しかし、私は持っている:私が見てきた唯一の方法は、おそらく、個別に私のレシピクラスに対してこの方法を行うことにより、各オブジェクトのクラスのすべての要素を保存せずに、全体として、このクラスの内容を保存することですこのメソッドを使用してこのオブジェクトをファイルに保存するには、これを実装するにはどうすればいいか分かりません。プロパティの一部は次のとおりです。
NSString* name;
UIImage* recipePicture;
NSDate* dateAdded;
NSMutableArray* ingredients; //The contents are all NSStrings.
レシピクラスのオブジェクトを保存する方法を知っている人はいますか? それは私がそれを理解することができない夢中になってきた。どんな助けでも大歓迎です。私は既に、 "RecipeData.plist"というタイトルの.plistを持っています。 plistにすべてのプロパティを書き込んで、実行時にこれらのプロパティを使ってレシピの新しいオブジェクトを初期化するだけでよいですか?
これを回答の残りの3分の2 - プロパティリストに格納するNSDataオブジェクトにエンコードする方法と、プロパティリストからデータをデコードする方法についてこれを更新する必要があります。 – rmaddy
以下のコメントで私が言ったように、これを行う方法を私に見せてくれることに感謝します。本当に大きな助けになっています。 – crarho
'self = [super init];'の代わりに 'self = [super initWithCoder:coder];を呼び出すべきです。それ以外の場合、スーパークラスはエンコードされたデータを持ちません。 –