我有4个文本字段,我希望通过单击返回键 -
来执行以下操作1-当我在一个字段中输入条目并按返回键时,应该跳到下一个
的光标TextField。
谢谢。
答案 0 :(得分:0)
实施UITextField
委托并将标记值设置为您的所有textField。喜欢1,2,3 ......等等。然后,确保scrollView
和textField标记值不应该冲突。
-(BOOL)textFieldShouldReturn:(UITextField *)textField
{
int nextTextFieldTag = textField.tag+1;
UITextField *textFieldd = (UITextField*)[self.view viewWithTag:nextTextFieldTag];
if (textFieldd!=nil) {
if ([textField isKindOfClass:[UITextField class]]) {
[textFieldd becomeFirstResponder];
return NO;
}
}
return YES;
}
答案 1 :(得分:0)
试试这个
将4个文本字段作为textfield1,textfield2,textfile3,textfield4。
在textfield委托方法
中 - (BOOL)textFieldShouldReturn:(UITextField *)textField
{
if([textField isEqual:textfield1])
{
[textfield2 becomeFirstResponder];
return NO;
}
else if([textField isEqual:textfield2])
{
[textfield3 becomeFirstResponder];
return NO;
}
// Do for other textfields
return YES;
}
答案 2 :(得分:-2)
您只需知道下一个TextField应该是什么,并且UITextFieldDelegateProtocol
尤其是- (BOOL)textFieldShouldReturn:(UITextField *)textField
已实施。
在- (BOOL)textFieldShouldReturn:(UITextField *)textField
中,只需找出下一个TextField并执行[nextTextField becomeFirstResponder];
所以- (BOOL)textFieldShouldReturn:(UITextField *)textField
方法看起来像这样:
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
if ([textField isEqual:firstTextField]) {
[secondTextField becomeFirstResponder];
}
//When last textfield dismiss the keyboard
else if ([textField lastTextField]) {
[textField resignFirstResponder];
}
return NO;
}