我需要为NSManagedObject
子类中的字段(我们称之为foo
)编写一个自定义setter方法.数据模型中定义了foo
,Xcode在数据模型中自动生成了@property
和@dynamic
个字段.h和.m个文件.
如果我这样写我的setter:
- (void)setFoo: (NSObject *)inFoo {
[super setFoo: inFoo];
[self updateStuff];
}
然后我在调用super
时收到编译器警告.
或者,如果我这样做:
- (void)setFoo: (NSObject *)inFoo {
[super setValue: inFoo forKey: inFoo];
[self updateStuff];
}
然后我就进入了一个无限循环.
那么,为NSManagedObject的子类编写自定义setter的正确方法是什么呢?