昨日CoreDataを使い始めたばかりで、夢中になっています:( CoreDataを使用するプロジェクトを作成しました(ボックスにチェックマークを付けて-CoreDataを使用します)。エンティティを作成してから、すべてのエンティティのNSManagedObjectクラスを作成しました(エンティティの「setter」および「getter」メソッド)。
ここで、これらすべてのクラスをAppDeletegateに#インポートし、applicationDidFinishLaunchingメソッドに書き込みました。
(サブスクリプションは、アプリケーションのエンティティの1つです)
NSManagedObjectContext *context = [self managedObjectContext];
Subscriptions *sbs = (Subscriptions *)[NSEntityDescription insertNewObjectForEntityForName:@"Subscriptions" inManagedObjectContext:context];
[sbs setTitle:@"OK"];
[sbs setType:@"Tag"];
[sbs setCode:@"cars"];
NSError *error = nil;
if (![context save:&error]) {
NSLog(@"Couldn't create the subscription");
}
これを実行すると、このエラーが発生します
[NSManagedObject setTitle:]:認識されないセレクターがインスタンス0x6160550に送信されました
なぜこれが起こっているのか分かりません。助けてください!!!みなさん、よろしくお願いします!
SubscriptionsSubscriptions.hのヘッダーを追加します
@interfaceサブスクリプション:NSManagedObject {
}
@property(nonatomic、retain)NSString*タイプ;
@property(nonatomic、retain)NSDecimalNumber*読み取り;
@property(nonatomic、retain)NSString*タイトル;
@property(nonatomic、retain)NSString*コード;
@property(非アトミック、保持)NSDecimalNumber*新規;
@終わり
何も変更しませんでした。Xcodeが作成したのと同じです。