Comment afficher le clavier par défaut dans UITextView?
-
06-07-2019 - |
Question
Je souhaite créer une vue composée uniquement d'un UITextView
. Lorsque la vue est affichée pour la première fois, par défaut, j'aimerais que le clavier soit visible et prêt pour la saisie de texte. De cette façon, l'utilisateur n'a pas besoin de toucher le UITextView
pour pouvoir commencer l'édition.
Est-ce possible? Je vois que la classe a une notification appelée UITextViewTextDidBeginEditingNotification
mais je ne sais pas comment envoyer cela, ou si c'est même la bonne approche.
La solution
Pour ce faire, il vous suffit d’envoyer le message devenirFirstResponder à votre UITextField, comme suit (en supposant que vous disposiez d’un point de vente appelé textField pointant vers le champ en question):
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[textField becomeFirstResponder];
}
Autres conseils
Dans Swift
Pour afficher automatiquement le clavier, procédez comme suit:
override func viewDidLoad() {
super.viewDidLoad()
// show keyboard
textView.becomeFirstResponder()
}
Notes
- Cela suppose que la vue texte est éditable.
- Fonctionne à la fois pour
UITextView
etUITextField
- Pour masquer le clavier, utilisez
textView.resignFirstResponder ()
La suite a bien fonctionné pour moi avec Swift
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(animated)
// Show keyboard by default
billField.becomeFirstResponder()
}
La clé consiste à utiliser la fonction viewDidAppear.