web-dev-qa-db-fra.com

Fermez le clavier sur UITextField

Je suis un débutant en développement pour les appareils iOS. J'ai inséré un UITextField sur InterfaceBuilder et j'ai attribué le code: 


@interface ComposeViewController : UIViewController {
 id <ComposeViewControllerDelegate> delegate;
 IBOutlet UITextField *notificationTitle;
}
Comment puis-je permettre de fermer le clavier lorsque l'utilisateur appuie sur la touche "Retour"?

24
Francesc

Définissez le délégué de UITextField sur votre ViewController, ajoutez une sortie de référence entre le propriétaire du fichier et le UITextField, puis implémentez cette méthode:

- (BOOL)textFieldShouldReturn:(UITextField *)textField {
   if (textField == yourTextField) {
       [textField resignFirstResponder];
   }
   return NO;
}
46
Lyle Pratt

Protocole hérité UITextFieldDelegateDans le jeu de méthodes viewDidLoad:

yourTextField.delegate = self
Implémentez la méthode de délégué ci-dessous:

- (BOOL)textFieldShouldReturn:(UITextField *)textField
{ 
   [yourTextField resignFirstResponder];
   return NO;
}

23

Héritez du protocole UITextFieldDelegate et implémentez textFieldShouldReturn:, vous attraperez l'événement "return".

Dans textFieldShouldReturn écrire [notificationTitle resignFirstResponder];

1
Martin Babacaev

Ajoutez une cible d'action à l'événement Did End on Exit (UIControlEventEditingDidEndOnExit), dans la fonction cible, supprimez le premier répondant du texte archivé à l'aide de resignFirstResponder . Ajout d'une cible d'action

Note 1. Nib --- donne une action pour ne pas finir à la sortie 2. Dans le code, ajoutez une action cible à l'événement UIControlEventEditingDidEndOnExit.

0
Girish Kolari