如何从一个文本字段移动到下一个文本选项卡上的字段栏按钮操作

时间:2011-01-30 06:16:49

标签: iphone objective-c cocoa-touch ios4 uitextfield

在我的iphone应用程序中,我有6个textFields和一个tabBar(有3个按钮Next,Previous,Done)。

我需要做的就是当我点击下一个按钮时,焦点应该从第一个textField移动到下一个textField。

在下一步按钮的IBAction上,我编写以下代码:

if ([txt1 isFirstResponder]==YES) {

    NSLog(@"TXT1");

    [txt1 resignFirstResponder];

    [txt2 becomeFirstResponder];

}
else if ([txt2 isFirstResponder]==YES) {

    [txt2 resignFirstResponder];

    [txt3 becomeFirstResponder];

}
else  if ([txt3 isFirstResponder]==YES) {

    [txt3 resignFirstResponder];

    [txt4 becomeFirstResponder];

}
else  if ([txt4 isFirstResponder]==YES) {

    [txt4 resignFirstResponder];

    [txt5 becomeFirstResponder];

}
else  if ([txt5 isFirstResponder]==YES) {

    [txt5 resignFirstResponder];

    [txt6 becomeFirstResponder];

}
else  if ([txt6 isFirstResponder]==YES) {

    [txt6 resignFirstResponder];

}

当我使用此代码时,NSLog会无限次地打印。

可以做些什么?

3 个答案:

答案 0 :(得分:1)

可能因为txt1 isFirstResponder,你将txt2设置为firstResponder,然后检查txt2是否是第一响应者。您应该在每个break;语句的末尾添加if

答案 1 :(得分:1)

哎呀,这是我的错。我忘了将textField的委托连接到文件所有者.. 谢谢你们。

答案 2 :(得分:0)

实际上,在每个if语句中,您不需要resignFirstResponder,因为每次移动到另一个字段时都不想关闭键盘。

相反,请将resignFirstResponder留在txt6