Я нашел этот подход ..
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
NSString *newString = [textField.text stringByReplacingCharactersInRange:range withString:string];
if(textField == textField1)
{
if (textField1.text.length > 0 && range.length == 0)
{
return NO;
}
else {
[textField1 setText:newString];
[textField2 becomeFirstResponder];
return YES;
}
}
else if(textField == textField2)
{
if (textField2.text.length > 0 && range.length == 0)
{
return NO;
}else {
[textField2 setText:newString];
[textField3 becomeFirstResponder];
return YES;
}
}
}
Мы можем сделать это по-другому ... Объявить эту строку в viewDidLoad и этого метода.
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(endEditingTextField:) name:@"UITextFieldTextDidChangeNotification" object:txtfield1];
- (void) endEditingTextField:(NSNotification *)note {
if ([[txtfield1 text] length] > 0)
{
[txtfield1 resignFirstResponder];
[txtfield2 becomeFirstResponder];
}
}
Надеюсь, что это помогает ...
как это делается? вы можете показать пример кода? – quantum
'[textField статьFirstResponder]' – akashivskyy