コア データを使用する iOS アプリケーションがあります。を構築しましたNSManagedObjectModel
。そこに NEOrder エンティティがあります。NSManagedObject サブクラスを生成しました。
@interface NEOrder : NSManagedObject
@property //....
@end
UIViewController のサブクラスがあります。これには、NEOrder 型のインスタンス変数が必要です。しかし、一般的なカスタム オブジェクトのように動作するようにしたい:
@interface NEOrder : NSObject
@property //....
@end
もちろん、そこに NSObject をサブクラス化する NEOrder_ の宣言を含む別の .h および .m ファイルを作成することによって実行できます。ただし、このファイルは、@synthesize/@dynamic と init メソッドを除いて、NSObjectModel で生成されたコア データと非常によく似ています。その仕事は二度としたくない。助けてください、どうすればできますか?
生成された NEOrder アプリに init を追加するとクラッシュします。
-(id)init
{
if (self=[super init])
{
self.name=[[NSString alloc] init];
self.phone=[[NSString alloc] init];
self.weight=[[NSNumber alloc] init];
self.fromDirection=[[NEDirection alloc] init];
self.toDirection=[[NEDirection alloc] init];
}
return self;
}
そして、私がそれをどのように使いたいかについて、さらにいくつかの言葉。
//NEOrder *order is an instance of view controller
self.order=[NEOrder alloc] init]
//...
self.order.name=@"order name";
self.order.phone=@"12344321";
出来ますか?または、そのために別の NSObject のサブクラスを作成する必要がありますか?