"нераспознанный селектор, отправленный экземпляру" для события UIPageControl ValueChanged
Я пытаюсь программно использовать addTarget(), чтобы добавить событие ValueChanged для объекта UIPageControl в mainView.
var pageControls = mainView.subviews.filter { $0 is UIPageControl } as [UIPageControl]
for p in pageControls
{
println("\(p.tag)" //p.tag printed as expected
p.addTarget(self, action: "pageValueChanged:", forControlEvents: .ValueChanged)
}
а потом
func pageValueChanged(sender: AnyObject) {
var pageControl = sender as UIPageControl
println ("value changed")
}
В mainview есть 1 UIPageControl, я ожидаю, что pageValueChanged сработает при нажатии объекта UIPageControl для изменения его значения. Но когда щелкаю объект UIPageControl, я получаю ошибку "[Tmoji.KeyboardViewController pageValueChanged:]: unrecognized selector sent to instance"
,
Я сделал то же самое для события TouchUpInside UIButton, и это сработало. Я что-то пропустил?
1 ответ
Решение
Глупая ошибка.
Оказалось, что моя функция pageValueChanged была добавлена в другую функцию неправильно, а не добавлена в класс.