У меня есть UIAlertView с UITextField. Я подключил делегат UIAlertView, и я возвращаю YES или NO в alertViewShouldEnableFirstOtherButton:
в зависимости от текста в UITextField.Как сделать UIAlertView вызовом `alertViewShouldEnableFirstOtherButton:` после внесения изменений?
Мне нужно изменить текст текстового поля программно. Это работает так, как ожидалось.
К сожалению, я не знаю, как заставить UIAlertView вызывать метод делегата alertViewShouldEnableFirstOtherButton:
, чтобы он включал или отключал другую кнопку после того, как я изменил текст textField.
Я думал, что UIAlertView регистрируется как цель UITextField, поэтому я попытался отправить UIControlEventValueChanged
с текстового поля. Не работает.
Из трассировки стека я понял, метод делегата вызывается из частного метода UIAlertView _alertSheetTextFieldDidChange:
.
Так что, если я изменил текст [self.currentAlert performSelector:@selector(_alertSheetTextFieldDidChange:) withObject:textField];
, вызывается метод делегата и изменяется состояние включения кнопки. Но, поскольку это частный метод, приложение, вероятно, будет отклонено. Я не хочу рисковать этим.
Есть ли чистый способ сделать звонок для просмотра предупреждения alertViewShouldEnableFirstOtherButton:
?
Я просто столкнулся с этой проблемой, а также, и это ответ работает, и, кажется, правильный способ сделать это – Alex