J'ai deux UITextFields
(par exemple le nom d'utilisateur et le mot de passe), mais je ne peux pas me débarrasser du clavier lorsque j'appuie sur la touche retour du clavier. Comment faire ?
Réponses
Trop de publicités?Vous devez d'abord vous conformer à la UITextFieldDelegate
dans le fichier d'en-tête de votre View/ViewController comme suit :
@interface YourViewController : UIViewController <UITextFieldDelegate>
Ensuite, dans votre fichier .m, vous devez implémenter ce qui suit UITextFieldDelegate
méthode de protocole :
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
[textField resignFirstResponder];
return YES;
}
[textField resignFirstResponder];
s'assure que le clavier est désactivé.
Assurez-vous que vous configurez votre view/viewcontroller pour qu'il soit le délégué de l'UITextField après avoir initialisé le champ de texte dans le fichier .m :
yourTextField = [[UITextField alloc] initWithFrame:yourFrame];
//....
//....
//Setting the textField's properties
//....
//The next line is important!!
yourTextField.delegate = self; //self references the viewcontroller or view your textField is on
Voir Gestion du clavier pour une discussion complète sur ce sujet.
Il m'a fallu quelques essais, j'avais le même problème, mais cela a fonctionné pour moi :
Vérifiez votre orthographe à -
(BOOL)textFieldShouldReturn:(UITextField *)textField {
[textField resignFirstResponder];
J'ai corrigé le mien à l'adresse suivante textField
au lieu de textfield
et bingo !! ça a marché...