UITextField фокус перед навигацией просмотра толчок? - PullRequest
5 голосов
/ 11 января 2009

У меня есть UITextField, настроенный в UITableViewCell, для элемента управления, имитирующего это в собственном приложении контактов Apple, когда вы собираетесь редактировать поле. Все это в основном работает нормально, за исключением небольшой ошибки пользовательского интерфейса.

UITableView является частью UIViewController, созданного и загруженного из XIB, но текстовое поле создается программно (и становится первым респондентом) в tableView:cellForRowAtIndexPath:, чтобы его можно было добавить в ячейку.

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

Однако приложение «Контакты» объединяет все это в одно целое.

Как я могу исправить это отставание? Я попытался переместить создание текстового поля и первый ответ на viewDidLoad, и это не помогло. Я даже попытался создать layoutSubviews и вызвать его из-за пределов контроллера представления, прежде чем он был помещен в стек.

К сожалению, не похоже, что текстовое поле на самом деле становится первым респондентом до тех пор, пока оно не станет частью ячейки - задолго до того, как представление было перемещено.

1 Ответ

4 голосов
/ 23 февраля 2018

Вы должны позволить UITextField стать первым респондентом в viewWillAppear. Я создал пример проекта здесь:

https://github.com/lukaswuerzburger/pushed-keyboard

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...