Я пытаюсь получить уведомления о том, когда изменяется свойство «currentTopViewPosition». Я использовал следующий код для регистрации изменений и получить их:Key-Value Observer не меняет свое собственное свойство
[self addObserver:self
forKeyPath:@"currentTopViewPosition"
options:NSKeyValueObservingOptionInitial|NSKeyValueObservingOptionNew|NSKeyValueObservingOptionOld|NSKeyValueObservingOptionPrior
context:NULL];
Затем принимающая сторона:
-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {
NSLog(@"Key Path: %@\n change: %@",keyPath, change);
}
Но ничего становилось для него вошли.
Я протестировал, чтобы убедиться, что значение действительно меняется с помощью NSTimer, чтобы распечатать его значение каждые 5 мс, и оно менялось.
Я никогда не получал наблюдение за ключом, чтобы работать, так что я делаю что-то неправильно? пропустить шаг?
Спасибо!
UIKit не гарантированно KVO уступчивых – danielbeard
@danielbeard Но что это охватывает? Это настраиваемое свойство в подклассе uiviewcontroller, ли это дисквалифицирует его? – SnoApps
Как это рассчитывается? Можете ли вы показать, где определено 'currentTopViewPosition'? – danielbeard