Вопрос

Я хочу создать представление, состоящее исключительно из 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.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top