35 votes

IOS: action avec la touche entrée du clavier Keyboard iPad

J'ai deux champs de texte, dans le premier champ de texte, j'écris "Bonjour" et lorsque je pousse sur le clavier de l'iPad, je souhaite que le deuxième champ de texte apparaisse "Monde"; Comment puis-je utiliser enter pour créer une action dans mon application?

74voto

omz Points 38947

En général, vous affectez votre contrôleur de vue en tant que délégué du champ de texte, puis implémentez la méthode textFieldShouldReturn: , par exemple:

 - (BOOL)textFieldShouldReturn:(UITextField *)textField {
    otherTextField.text = @"World"
    return YES;
}
 

9voto

aroth Points 28424

Vous pouvez le faire en implémentant le protocole UITextFieldDelegate dans votre contrôleur. Par exemple, vous pourriez faire quelque chose comme:

 - (BOOL)textFieldShouldReturn:(UITextField *)textField {
    if (textField == theFirstTextField && [textField.text isEqualToString:@"Hello"]) {
        theSecondTextField.text = @"World";
    }
    return YES;
}
 

2voto

mbehan Points 2203

Définissez votre contrôleur de vue pour être le délégué du champ de texte, puis implémentez

 -(BOOL)textFieldShouldReturn:(UITextField *)textField
 

cette fonction est appelée lorsque vous appuyez sur le bouton Entrée du clavier.

1voto

Alfie Hanssen Points 3090

C'est à peu près ce que vous feriez. Peaufiner pour conditionner le type d'appareil (si vous voulez vraiment un iPad seulement):

 #pragma mark - UITextField Delegate

- (BOOL)textFieldShouldReturn:(UITextField *)textField 
{
    if (textField == self.firstTextField && [textField.text isEqualToString:@"Hello"]) {
        self.secondTextField.text = @"World";
    }
    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