UITextField hérite de UIControl, de sorte que vous pouvez utiliser le mécanisme d'action cible qui fait partie de la classe UIControl:
[textField addTarget:self action:@selector(updateTextField) forControlEvents:UIControlEventValueChanged];
Dans la méthode d'action, vous pouvez remplacer le texte du UITextField avec seulement le dernier caractère et consigner ce caractère dans la console. Notez que depuis la modification du texte du UITextField entraînera à nouveau dans le message « updateTextField » étant envoyé une seconde fois à la cible, vous aurez besoin d'une sorte de mécanisme pour déterminer si la mise à jour ou non:
- (void)updateTextField {
if(updateTextField == YES) {
updateTextField = NO;
NSString *lastChar = [textField.text substringFromIndex:[textField.text length]];
[textField setText:lastChar];
NSLog(@"%@", lastChar);
} else {
updateTextField = YES;
}
}
Ou quelque chose comme que de toute façon ...