Подтвердить что ты не робот

WatchValueForKeyPath не называется

У меня есть 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);
}

Но, хотя я проверил и дважды проверил, что логотипAnimation.patrocinioDidLoad изменился, watchValueForKeyPath никогда не вызывается...

Я что-то пропустил?

Спасибо за помощь!

Антонио

4b9b3361

Ответ 1

Решил: Я устанавливал patrocinioDidLoad в logoAnimation напрямую, без использования стандартных геттеров и сеттеров. В logoAnimation,

patrocinioDidLoad = YES;

не работает, тогда как

self.patrocinioDidLoad = YES;

сделал!