質問

私は自分のコアデータモデルの私のエンティティの一つにNSStringsのNSMutableArrayのを追加したいです。問題は、これがコアデータでサポートされているタイプではないということです。

私はtranformable属性を作ってみましたが、問題は、私はNSDataのにNSMutableArrayのを回し、再びNSMutableArrayのを、NSDataのから行くのない方法を見ていないということです。この問題を解決することができる方法として、誰もがアイデアを持っていますか?

(私はそれが私のモデルに存在することにしたい、私は配列をアーカイブすることができます知っているが、私はそれを行うにはしたくない)。

役に立ちましたか?

解決

あなたは、あなたのモデル化オブジェクト内のバイナリデータの属性を持っているデータに配列をアーカイブし、そしてオブジェクトにそれを引き渡すことができます。

しかし、私は良い方法ではなく、直接、配列を使用しての、対多の関係を持っていることだと思います。

****編集:ここでは、管理対象オブジェクトで使用できるようにNSDataのに配列をアーカイブする方法を説明します***

NSData *arrayData = [NSKeyedArchiver archivedDataWithRootObject:[NSArray arrayWithObjects:@"1",@"2", nil]];

基本的には、NSCodingプロトコルに準拠して、あなたが持っている任意のクラスは、このようにアーカイブすることができます。 NSArrayの/ NSMutableArrayのは、すでにそれに準拠しています。彼らは自分自身をアーカイブするために、そのオブジェクトのすべてを伝えるので、彼らはあまりにも準拠する必要があります。そして、それらのオブジェクトのすべてのメンバーが、それは木のようなものだなど、準拠する必要があります。

あなたの配列が適合しているので、それは、あなたは黄金だ、(も準拠)のNSStringの配列です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top