我正在尝试了解如何在Xcode中使用Bindings。我有这门课:
#import <Foundation/Foundation.h>
@interface OddsItem : NSObject {
NSMutableDictionary *properties;
}
@property(nonatomic, retain) NSMutableDictionary *properties;
@end
和
#import "OddsItem.h"
@implementation OddsItem {
}
@synthesize properties;
- (void)dealloc {
[properties release];
[super dealloc];
}
@end
这是否符合KVC标准?我发现的例子似乎是在合成属性的日子之前。
如果不符合KVC标准,我该怎样做才能做到这一点?
答案 0 :(得分:3)
@synthesized
生成的方法符合KVO标准。
只要您使用setter方法更改属性,它就会符合KVO。
但是,如果直接更改实例变量,则不会。在这种情况下,您必须手动拨打willChangeValueForKey:
和didChangeValueForKey:
。