以下を含むカスタムオブジェクトの配列をアーカイブすることにより、iOSにローカルに保存する小さなアプリを開発しました。
@property (nonatomic, copy) NSString *name;
@property (nonatomic, copy) NSString *dateCreated;
@property (nonatomic, copy) NSString *desc;
@property (nonatomic, copy) NSString *url;
iCloudを使用して上記のアーカイブを同期したいのですが、推奨されるメカニズムはUIDocumentサブクラスを使用することだと思います。私が見つけたすべてのUIDocumentの例は、単一のインスタンスを1つのNSStringで利用しているため、カスタムオブジェクトの配列全体を同期する方法について少し混乱していますが、UIDocumentを利用しています(今日NSCodingを介してローカルで行っているように)。
上記のプロパティを含むUIDocumentオブジェクトの配列を作成する必要がある場合、上記のデータオブジェクトのインスタンスを1つ含むUIDocumentのインスタンスを作成してから、すべてのインスタンスを含む配列を作成する必要があります。または、1つのUIDocumentに次の完全な配列を含める必要があります。カスタムオブジェクト?
私はいくつかの調査を行いましたが、それでも混乱しています。最終的には、前述のカスタムオブジェクトの配列を含む1つのファイルだけを同期する必要があります。
よろしくお願いします
今日私が持っているのは、Snippetと呼ばれる4つの文字列を持つ上記のカスタムクラスであり、ルートビューコントローラーには、そのSnippetクラスの新しいインスタンスをそれぞれ追加するlistと呼ばれるNSMutableArrayがあります。
self.list = [[NSMutableArray alloc] init];
Snippet *newEntry = [[Snippet alloc] init];
[self.list addObject:newEntry];
カスタムオブジェクトの配列を所有するUIドキュメントサブクラスを作成する必要がありますか?