3

Xcodeでバインディングを使用する方法を理解しようとしています。私はこのクラスを持っています:

#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に準拠していない場合、そのために何をする必要がありますか?

4

1 に答える 1

3

から生成されたメソッド@synthesizedはKVOに準拠しています。

setterメソッドを使用してプロパティを変更する限り、KVOに準拠します。

ただし、インスタンス変数を直接変更した場合は変更されません。その場合、手動でとを呼び出す必要がwillChangeValueForKey:ありdidChangeValueForKey:ます。

于 2012-08-06T13:29:23.240 に答える