7 votes

Assigner une méthode pour l'événement didEndOnExit de UITextField

Comment assigner programmatiquement une méthode (observateur ?) à l'objet didEndOnExit événement d'un UITextField objet ?

C'est assez facile à faire dans l'IB mais je n'arrive pas à trouver comment le faire en code.

31voto

Frank V Points 9690

Je viens de comprendre...

[mytextField addTarget:self 
        action:@selector(methodToFire:)
        forControlEvents:UIControlEventEditingDidEndOnExit];

5voto

Corey Floyd Points 16747

Dans votre contrôleur de vue, mettez en œuvre la méthode suivante :

- (void)textFieldDidEndEditing:(UITextField *)textField{

//do stuff

}

N'oubliez pas de définir le délégué dans viewDidLoad ou l'initialisateur :

myTextField.delegate = self;

1voto

ColossalChris Points 666

Si vous envisagez d'utiliser cette cible pour faire en sorte qu'un autre champ de texte devienneFirstResponder afin de créer une option de bouton "Suivant" qui donne l'impression que vous "tabulez" dans les champs de texte, je vous recommande d'utiliser textFieldShouldReturn à la place avec un code comme celui-ci. Laissez-moi vous dire que cela fonctionne si bien que vous aurez l'impression de chevaucher une licorne :

    -(BOOL)textFieldShouldReturn:(UITextField *)textField{
    [textField resignFirstResponder];

    if([textField isEqual:_textField1]){
        [_textField2 becomeFirstResponder];
        return NO;
    }else if([textField isEqual:_textField2]){
        [_textField3 becomeFirstResponder];
        return NO;
    }

    return YES;
}

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