とても簡単な質問ですが、答えが見つからないようです。(iOS 5以降のアプリの開発)。
私のAppDelegateには、プロパティがあります。これを呼び出しましょう@property (non atomic) BOOL aFlag;
。値が変更された場合にAppDelegateに通知を受け取りたいのですが。これが私が試したものです(すべてがで発生しますAppDelegate.m
)。これは、2つの異なるオブジェクトをオブザーバーで「リンク」した場合と同じです。
-(BOOL)application:(UIApplication*)application
didFinishLaunchingWithOptions:(NSDictionary*)launchOptions {
// Some stuff
_aFlag = YES;
[self addObserver:self
forKeyPath:@"aFlag"
options:(NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld)
context:nil];
// Some other stuff
}
-(void)observeValueForKeyPath:(NSString*)keyPath
ofObject:(id)object
change:(NSDictionary*)change
context:(void*)context {
if ([keyPath isEqual:@"aFlag"]) {
// Do something
} else {
// Do nothing
}
}
しかしobserveValueForKeyPath:
、呼ばれていません。
私はどこが間違っていますか?ありがとう。