3

アプリケーションでコアデータを使用しています。

変換可能な属性を使用して NSArray を格納すると、このエラーが発生します。

要するに、NSArray をコア データに格納するにはどうすればよいか知りたいのです。

そしてそれを取り戻す方法。

これは私のコードです。

#import <CoreData/CoreData.h>

@class category;

@interface qrandom :  NSManagedObject  
{
}

@property (nonatomic, retain) NSArray* arr;
@property (nonatomic, retain) category * cid;

@end

................................................................... ...................................................

#import "qrandom.h"

#import "category.h"

@implementation qrandom 

@dynamic arr;
@dynamic cid;

@end

................................................................... ...................

カテゴリ.h ファイル

#import <CoreData/CoreData.h>

@class qrandom;

@interface category :  NSManagedObject  
{
}
@property (nonatomic, retain) NSNumber * cid;
@property (nonatomic, retain) qrandom * randomrelation;

@end

................................................................... ...................................................

カテゴリ.m ファイル

#import "category.h"
#import "qrandom.h"

@implementation category

@dynamic cid;
@dynamic randomrelation;

@end

................................................................... ................................................

ここに画像の説明を入力

4

1 に答える 1

5

基本的に、NSArrayまたはNSDictionaryを変換可能な属性として直接保存することは、配列の値を取得できないため、CoreData では機能しません。

リレーションシップのみを使用することを提案するマーカスの回答を参照してください。

NSMutableArray はコア データ = WORKS と共に保存されますが、配列を変更した後は機能しません

しかし!

管理対象オブジェクトで使用できるように、配列をアーカイブできます。ここで jbrennan の応答を参照してください: Saving an NSMutableArray to Core Data

于 2012-06-13T16:11:46.547 に答える