一个非常简单的问题,但我似乎找不到答案。(开发 iOS 5+ 应用程序)。
在我的AppDelegate中,我有一个属性,我们称之为它@property (non atomic) BOOL aFlag;
。如果值发生变化,我希望我的AppDelegate得到通知。这是我尝试过的(一切都发生在 中AppDelegate.m
),这与我将两个不同的对象与观察者“链接”时相同:
-(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:
不叫。
我哪里错了?谢谢。