2016-11-29 3 views
0

コアデータの属性としてNSArrayのサブクラスを保存したいとします。コアデータでNSArrayサブクラスを使用する

私は変形可能な属性を介してNSArrayを格納することは問題ありません。しかし、これまでに私が試したことは何か(カスタム値変換の例)NSArrayサブクラスのインスタンスとしてNSArrayとしてのみ属性を保存/取得することはできません。

誰もこれを成功裏に管理してくれますか?

私は私のクラスの次のimplentation持って今の通り:Coordinate

@implementation Coordinate 

-(double)longitue 
{ 
    return [self[0] doubleValue]; 
} 

-(double)latitude 
{ 
    return [self[1] doubleValue]; 
} 
-(NSString*)description 
{ 
    return [NSString stringWithFormat:@"lont %@ lat %@", self[0], self[1]]; 
} 

+ (Class)transformedValueClass 
{ 
    return [Coordinate class]; 
} 

+ (BOOL)allowsReverseTransformation 
{ 
    return YES; 
} 

- (id)transformedValue:(id)value 
{ 
    return [NSKeyedArchiver archivedDataWithRootObject:value]; 
} 

- (Coordinate*)reverseTransformedValue:(id)value 
{ 
    return (Coordinate*)[NSKeyedUnarchiver unarchiveObjectWithData:value]; 
} 

@end 

と私のモデルでは、Value transformerCustom classは、あなたの助けのためにCoordinate

おかげに設定されています。

P.S:私のクラスは配列である必要はありませんが、単なる例です。

答えて

0

問題がさらに修正された後は、NSArrayをコアデータでサブクラス化することと関連があります。

今のところ単純なNSObjectサブクラスのプロパティとしてNSArrayを使用します。

関連する問題