-[UITextField isFirstResponder] возвращает false, даже если поле в данный момент редактируется

В моем методе -viewDidLoad контроллера представления я вызываю [myTextField becomeFirstResponder];. Это работает как шарм, открывает клавиатуру, и myTextField получает фокус.

У меня есть кнопка с целевым действием (действие находится в том же контроллере), которое проверяет [myTextField isFirstReponder], но всегда возвращает false (э-э, NO в терминах Cocoa;)).

Разве это не правильный способ узнать, есть ли у myTextField клавиатура для ввода?


person RickDT    schedule 30.10.2008    source источник


Ответы (1)


Как насчет проверки значения свойства редактирования, например [myTextField isEditing]?

Я думаю, что ваша кнопка принимает статус первого ответчика, когда вы нажимаете на нее.

person Jablair    schedule 30.10.2008
comment
Это точно. Нажатие кнопки фокусируется, и технически я хочу знать, что в данный момент редактируется, не обязательно, если окно считает это первым ответчиком. Спасибо! - person RickDT; 31.10.2008
comment
Это работает, конечно. Но почему isFirstReponder не работает? Никто не любопытен? - person lukas_o; 04.12.2015
comment
это не работает для меня. хотя текстовое поле явно редактируется, isFirstResponder и isEditing оба возвращают false - person shoe; 06.04.2017