web-dev-qa-db-fra.com

Comment ouvrir automatiquement le clavier sur UITextField?

J'ai un tableau très simple et quand tocuh une cellule, il ouvre une nouvelle vue avec un UITextfield. Tout ce que je veux, c'est que le clavier s'ouvre automatiquement, sans que l'utilisateur ait à toucher le champ UITextfield.

Tout est fait dans Interface Builder, donc je ne sais pas comment je fais ça. Je suppose que je dois régler le focus à un moment donné?

Merci

53
eemceebee

Pour que le clavier s'affiche immédiatement, vous devez définir le champ de texte comme premier répondeur à l'aide de la ligne suivante:

[textField becomeFirstResponder];

Vous voudrez peut-être le placer dans le viewDidAppear: méthode.

133
jessecurry

Swift 3 & 4:

override func viewDidAppear(_ animated: Bool) {
    super.viewDidAppear(animated)
    textField.becomeFirstResponder()
}
8
Nico S.

Préférez ajouter le premier répondant sur le fil principal -

 override func viewDidAppear(_ animated: Bool) {
    super.viewDidAppear(animated)
    DispatchQueue.main.async {
        self.textField.becomeFirstResponder()
    }
}

Cela sera utile lorsque la vue du contrôleur de vue est ajoutée en tant que sous-vue.

0
Yash