Как автоматически загрузить клавиатуру (SDK для iOS)?

действительно простой вопрос:

Я получил представление, состоящее из двух текстовых полей. При загрузке представления я хочу, чтобы клавиатура автоматически всплывала и фокусировала первое поле.

Как мне это сделать? (В коде? В IB?)

Большое спасибо! васаби

4 Solutions collect form web for “Как автоматически загрузить клавиатуру (SDK для iOS)?”

В вашем viewDidAppear: метод call [yourTextField becomeFirstResponder] .

[myTextField becomeFirstResponder] должен сделать трюк.

Также убедитесь, что вы реализуете методы UITextFieldDelegate где вы можете скрыть первого ответчика.

Ну, я знаю, что этот вопрос уже ответил много раз. Требуется время для отображения клавиатуры после viewDidAppear метода viewDidAppear .

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

Я всегда becomeFirstResponder метод becomeFirstResponder методе viewWillAppear чтобы уменьшить время отображения для клавиатуры, но мне нужно было отображать клавиатуру сразу после метода viewDidAppear чтобы не потерять гладкую анимацию.

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

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

Вот код:

 - (void)viewDidAppear:(BOOL)animated { UITextField *textField = [[UITextField alloc]init]; [self.view addSubview:textField]; [textField becomeFirstResponder]; [textField resignFirstResponder]; [textField removeFromSuperview]; } 

Как пояснение к ответу Маркса Гранова;

Если вы поместите [yourTextField becomeFirstResponder] внутрь viewDidLoad или viewWillAppear – он покажет клавиатуру, не дожидаясь секунды или двух (что произойдет, если вы поместите вызов becomeFirstResponder внутри метода viewDidAppear).

  • iOS - перемещение UITextField в другую позицию при перемещении UIView
  • UITextField: сделать его выше и позиционировать текст ввода по вертикали
  • Как сохранить uitexfield, чтобы текст оставался с контроллера вида для просмотра контроллера
  • Использование UITextInput протокола для UITextField и UITextView для управления результатами отбора при сбое
  • Ошибка при перемещении UITextField
  • Инициализация подкласса UITextField в быстром
  • Добавление кнопки отмены на клавиатуру UITextField
  • Текст UITextField сдвигается влево на 1px при редактировании
  • Можно показать клавиатуру без использования UITextField и UITextView iphone app?
  • Разрешить только буквенно-цифровые символы для UITextField
  • Быстрая позиция значка UITextField
  • Interesting Posts
    PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.