NSManagedObjectのサブクラスの自作メソッドを呼ぶとunrecognized selector sent to instanceが発生する
Xcode Version 8.1(8B62) DeploymentTarget iOS 8.4
Core Dataにデータを追加する処理を作っております。
Xcodeの機能でサブクラスを自動生成して自作メソッドを追加しました。
// Media+CoreDataClass.h
@interface Media : NSManagedObject
-(void)import:(NSArray *)received;
@end
@property (nullable, nonatomic, copy) NSString *id;
@property (nonatomic) int16_t diskNo;
@property (nullable, nonatomic, copy) NSString *title;
// Media+CoreDataClass.m
-(void)import:(NSArray *)received {
self.id = [received valueForKey:@"id"];
self.diskNo = [(NSNumber *)[received valueForKey:@"diskNo"] intValue];
self.title = [received valueForKey:@"title"];
}
以下は正常に終了するのですが、
appDelegate_ = (AppDelegate *)[[UIApplication sharedApplication] delegate];
context_ = appDelegate_.persistentContainer.viewContext;
Media *media = [NSEntityDescription insertNewObjectForEntityForName:@"Media"
inManagedObjectContext:context_];
media.id = [json valueForKey:@"id"];
media.diskNo = [(NSNumber *)[json valueForKey:@"diskNo"] intValue];
media.title = [json valueForKey:@"title"];
[appDelegate_ saveContext];
以下のようにメソッド呼び出しをするとエラーとなります。
appDelegate_ = (AppDelegate *)[[UIApplication sharedApplication] delegate];
context_ = appDelegate_.persistentContainer.viewContext;
Media *media = [NSEntityDescription insertNewObjectForEntityForName:@"Media"
inManagedObjectContext:context_];
[media import:json];
[appDelegate_ saveContext];
-[Media import:]: unrecognized selector sent to instance 0x6000002c2370
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[Media import:]: unrecognized selector sent to instance 0x6000002c2370'
NSManagedObjectのサブクラスに自作メソッドの追加はできると様々なサイトに書かれていたのですが、やり方がまずい点があればご指摘お願い致します。