Как добавить наблюдателя на UISlider - PullRequest
1 голос
/ 23 августа 2010

Любая идея, как я могу добавить свой класс контроллера в качестве наблюдателя для моего ползунка класса View?

Я пытаюсь добиться этого с помощью способа Observer: внутри метода viewDidLoad моего контроллера я вызываю

[self addObserver:myView forKeyPath:@"myView.mySlider.value" options:NSKeyValueObservingOptionNew context:NULL];

и в том же файле контроллера я реализую:

- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context { 
    if ([keyPath isEqualToString:@"myView.mySlider.value"]) {
        myView.myImgView.animationDuration = [[change valueForKey:NSKeyValueObservingOptionNew] intValue]; 
    } 
} 

Но мое приложение падает.Пожалуйста, помогите

Ответы [ 2 ]

1 голос
/ 23 августа 2010

У меня проблема. Я неправильно настраивал наблюдателя. Вместо вызова метода addObserver для себя я должен вызывать его для объекта, который мне нужно наблюдать.

0 голосов
/ 23 августа 2010

Подключите ползунок к IBAction, как если бы вы делали это с помощью кнопки.Действие вызывается всякий раз, когда ползунок меняет свое значение.Если вам необходимо получить уведомление в другом классе об измененных значениях ползунка, отправьте NSNotification в свой IBAction и зарегистрируйте это уведомление в других классах.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...