Просмотр KVO - Наблюдение значения ключа - для запуска действия, когда переменная меняет свое значение.
В методе -viewWillAppear:
вашего контроллера представления, например, добавьте наблюдателя:
[self addObserver:self forKeyPath:@"myBoolean" options:NSKeyValueObservingOptionNew context:nil];
В вашем -viewWillDisappear:
методе отмените регистрацию наблюдателя:
[self removeObserver:self forKeyPath:@"myBoolean"];
Важно сделать этот последний шаг, чтобы метод -dealloc
не вызывал исключение.
Наконец, настройте метод наблюдателя, чтобы он что-то делал при изменении на myBoolean
:
- (void) observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {
if ([keyPath isEqual:@"myBoolean"]) {
// The BOOL value of myBoolean changed, so do something here, like check
// what the new BOOL value is, and then turn the indicator view on or off
}
}
Шаблон наблюдения значения ключа является хорошим общим способом инициирования чего-либо, когда значение объекта где-то изменяется. Apple написала хороший «быстрый старт» документ , который вводит эту тему.