Как показать клавиатуру по умолчанию в UITextView?
-
06-07-2019 - |
Вопрос
Я хочу создать представление, состоящее исключительно из UITextView
.По умолчанию, когда представление отображается впервые, я хочу, чтобы клавиатура была видна и готова для ввода текста.Таким образом, пользователю не нужно прикасаться к UITextView
сначала, чтобы начать редактирование.
Это возможно?Я вижу, что в классе есть уведомление под названием UITextViewTextDidBeginEditingNotification
но я не уверен, как это отправить, и правильный ли это вообще подход.
Решение
, чтобы выполнить это, просто отправьте сообщениеcomeFirstResponder в свой UITextField следующим образом (при условии, что у вас есть выход с именем textField, указывающий на рассматриваемое поле):
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[textField becomeFirstResponder];
}
Другие советы
В Свифте
Чтобы автоматически отображать клавиатуру, выполните следующие действия:
override func viewDidLoad() {
super.viewDidLoad()
// show keyboard
textView.becomeFirstResponder()
}
Примечания
- Это предполагает, что текстовое представление доступно для редактирования.
- Работает для обоих
UITextView
иUITextField
- Чтобы скрыть клавиатуру, используйте
textView.resignFirstResponder()
Следование работало хорошо для меня, используя Swift
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(animated)
// Show keyboard by default
billField.becomeFirstResponder()
}
Ключ должен использовать функцию viewDidAppear. Р>