189 votes

Comment supprimer le clavier lors de l'édition d'un champ UITextField ?

Je sais que je dois indiquer à mon UITextField de renvoyer le premier intervenant lorsque je veux désactiver le clavier, mais je ne sais pas comment savoir si l'utilisateur a appuyé sur la touche "Done" du clavier. Existe-t-il une notification que je peux surveiller ?

2 votes

[self.view endEditing:YES] ; en touches commence le délégué est la meilleure solution

0voto

Vineesh TP Points 1658

Essayez ceci

- (BOOL) textView: (UITextView*) textView shouldChangeTextInRange: (NSRange) range replacementText: (NSString*) text
{
    if ([text isEqualToString:@"\n"]) {
        [textView resignFirstResponder];
        return NO;
    }
    return YES;
}

0voto

jake Points 1
//====================================================
//                  textFieldShouldReturn:
//====================================================
-(BOOL) textFieldShouldReturn:(UITextField*) textField { 
    [textField resignFirstResponder];
    if(textField.returnKeyType != UIReturnKeyDone){
        [[textField.superview viewWithTag: self.nextTextField] becomeFirstResponder];
    }
    return YES;
}

0voto

C'est ainsi que j'écarte le clavier dans Swift 4.2 et cela fonctionne pour moi :

    override func viewDidLoad() {
    super.viewDidLoad()

    let tap = UITapGestureRecognizer(target: self, action: 
    #selector(dismissKeyboard))

    view.addGestureRecognizer(tap)
    }

    @objc func dismissKeyboard (_ sender: UITapGestureRecognizer) {
    numberField.resignFirstResponder()
    }

0voto

pooja_chaudhary Points 22

Créer une fonction hidekeyboard et la lier au champ de texte dans le fichier .xib et sélectionner DidEndOnExit

-(IBAction)Hidekeyboard    
{    
      textfield_name.resignFirstResponder;    
}

0voto

chandru Points 142

Si vous avez créé la vue à l'aide de l'Interface Builder, procédez comme suit Créez simplement une méthode,

-(IBAction)dismissKeyboard:(id)sender
{
[sender resignFirstResponder];
}

Il suffit de cliquer avec le bouton droit de la souris sur le champ de texte dans la vue, de définir l'événement comme "Did End on Exit" et de le relier à la méthode "dismissKeyboard".

T "Head First iPhone and iPad Development, 2e édition" (en anglais)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X