Je souhaite créer une vue qui consiste uniquement à un UITextView
. Lorsque la vue est affichée d'abord, par défaut, je voudrais que le clavier soit visible et prêt pour la saisie de texte. De cette façon, l'utilisateur n'a pas à toucher le UITextView
d'abord afin de 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.
pour accomplir, il suffit d'envoyer le message devenvefirstreresponder à votre Uitextfield, comme suit (en supposant que vous disposiez d'une prise appelée Textfield, pointant vers le champ en question):
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[textField becomeFirstResponder];
}
Pour afficher automatiquement le clavier, sur ce qui suit:
override func viewDidLoad() {
super.viewDidLoad()
// show keyboard
textView.becomeFirstResponder()
}
Notes
UITextView
et UITextField
textView.resignFirstResponder()
Après avoir fonctionné bien pour moi en utilisant Swift
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(animated)
// Show keyboard by default
billField.becomeFirstResponder()
}
La clé est d'utiliser la fonction ViewDididAppEar.