клавиатура iPhone не появляется при вводе UITextField

Это должно быть некоторой грубой ошибкой новичка, которую я просто не вижу, и я был бы благодарен за подсказки относительно того, что проверить или где посмотреть.

Я следовал учебному руководству iPhone, которое имеет UITextField, удостоверяясь, что я соединил IBOutlet для текстового поля, и это, кажется, компилирует правильно (никакие ошибки или предупреждения). Но когда я выполняю его под средством моделирования и нажимаю в поле, я не получаю клавиатуру, таким образом, я ничего не могу ввести в поле.

Я попытался искать сайт подобные вопросы и все, что я нашел, несколько вопросов, где разработчик пытается настроить некоторый сложный UI с несколькими контроллерами и тот, который, казалось, был той же проблемой, но в исходном плакате просто было сказано, что он решил его путем запуска нового проекта и портирования кода. Я хотел бы найти фактическое решение, таким образом, я не должен пытаться случайным образом восстановить проекты, когда эта проблема подходит снова.

Спасибо!

11
задан Norm 3 May 2010 в 01:37
поделиться

2 ответа

К чему подключен делегат для UITextField? Убедились ли вы, что функции делегата, в частности - (BOOL)textFieldShouldBeginEditing:(UITextField *)textField возвращает правильное значение (в данном случае YES)?

3
ответ дан 3 December 2019 в 03:17
поделиться

Не уверен, что это проблема кого-то еще, но я использовал текстовое поле в контроллере TabBar, отображаемое модально, и добавил жест встряхивания в основной контроллер представления. К сожалению, это означало, что я устанавливал [self becomeFirstResponder] в viewDidLoad. В этом случае, когда отображалось мое модальное представление, оно не становилось первым ответчиком, и, следовательно, клавиатура не отображалась.

Чтобы исправить это, я добавил [self resignFirstResponder] непосредственно перед вызовом модального представления, и все снова в порядке! Ура (потребовалось всего пять дней, чтобы понять это).

1
ответ дан 3 December 2019 в 03:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: