Отображение клавиатуры в нужное время iOS7

В iOS 6 я использую для представления клавиатуры в viewDidLoad .

 - (void)viewDidLoad { [super viewDidLoad]; [txtField becomeFirstResponder]; } 

Таким образом, когда navigationController выталкивает новый viewController, клавиатура уже существует, плавно анимируя слева направо и избегая восходящей анимации.

В iOS 7 это поведение кажется нарушенным.

Если я добавлю [txtField becomeFirstResponder] в viewDidLoad , клавиатура появится в середине нажатия анимации, уже в ее последней позиции: неприятный эффект!

Я попытался переместить [txtField becomeFirstResponder] в viewWillAppear , но окончательный результат не изменился.

Знаете ли вы способ вернуть поведение iOS 6, нажав новый viewController и клавиатуру вместе?

EDIT: использование таймера не работает ни … независимо от того, какая временная задержка задана, клавиатура отображается только в конце нажатия анимации.

До сих пор, моя лучшая попытка – поставить [txtField becomeFirstResponder] в viewWillLayoutSubviews или viewDidLayoutSubviews . К сожалению, это работает при нажатии viewController, но не при возврате (клавиатура не появляется).

Мне удалось экстраполировать ваше обходное решение в viewWillLayoutSubviews чтобы заставить его работать.

 - (void)viewWillLayoutSubviews { if (![self.textField1 isFirstResponder] && ![self.textField2 isFirstResponder] && ...) { [self.textField1 becomeFirstResponder]; } } 

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

  • iOS: Как настроить высоту области, покрываемой клавиатурой в iOS
  • как уволить уже открытую клавиатуру, когда появляется popover ios
  • Разрешить проверку полного доступа в клавиатурах iOS10
  • Как показать клавиатуру, не касаясь UISearchbar?
  • Пользовательский вид ввода в виде клавиатуры для текстового поля в Swift с использованием OSX 10.9 и Xcode 6.1.1 +
  • iOS8 UIImagePickerController в пользовательском расширении клавиатуры
  • Есть ли способ отключить прозрачность на клавиатуре в iOS 7?
  • Как создать пользовательскую клавиатуру, например, настоящую клавиатуру в iOS?
  • Как воспроизводить звук нажатия клавиш на пользовательской клавиатуре?
  • iOS 8 Swift: Как сохранить клавиатуру, отображаемую при условии, что UIAlercontroller представлен в моделях?
  • Переходы анимации блока UIView с анимированным контентом при показе / скрытии клавиатуры
  • Давайте будем гением компьютера.