Я могу добавить маленькую крестообразную кнопку, которая используется для очистки всего текста одним щелчком мыши в UITextField
со следующим кодом.
textField.clearButtonMode = UITextFieldViewModeWhileEditing;
Я также реализовал UITextFieldDelegate
.
Я хочу активировать / деактивировать правую кнопку панели UINavigationBar
в соответствии с изменениями в моем UITextField
.Правило простое: если текстовое поле имеет хотя бы один символ, просто включите кнопку, в противном случае отключите ее.
Я реализовал метод делегата UITextField
textField:shouldChangeCharactersInRange:
, чтобы постоянно проверять требование и обновлятьсостояние кнопки.
Теперь моя проблема в том, что когда я нажимаю маленькую крестообразную кнопку в текстовом поле, метод textField:shouldChangeCharactersInRange:
не вызывается.Таким образом, необходимое действие отсутствует.Как я могу определить событие нажатия кнопки очистки?
Некоторые изображения, чтобы показать, о чем я говорю.
Начальная стадия: здесь кнопка «Готово» отключена, потому что естьнет букв в текстовом поле
При наборе буквы кнопка «Готово» активируется
Теперь, если я нажму на кнопкуКнопка «Готово» все еще активна.Это неправильно.