У меня есть ViewController, создающий экземпляр UIView, и затем я регистрирую наблюдателя в экземпляре, таком что
logoAnimation = [[MainLogoAnimation alloc] init];
[logoAnimation addObserver:self forKeyPath:@"patrocinioDidLoad" options:(NSKeyValueObservingOptionNew|NSKeyValueObservingOptionOld) context:nil];
затем, в том же файле, я имею:
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context
{
NSLog(@"%@ \n %@ \n %@ \n ",keyPath,object,change);
}
Но, хотя я проверил и перепроверил это, logoAnimation.patrocinioDidLoad изменился, observeValueForKeyPath никогда не называется...
Я пропускаю что-то?
Спасибо за справку!
Antonio
Решил: Я устанавливал patrocinioDidLoad в logoAnimation напрямую, без использования стандартных геттеров и сеттеров. В logoAnimation
patrocinioDidLoad = YES;
не работает, тогда как
self.patrocinioDidLoad = YES;
работает!