UITextField跳转到上一个

时间:2011-06-06 19:07:38

标签: iphone ios uitextfield

我在视图中有两个UITextField让用户输入格式为1234AA的邮政编码

  • UITextField 1:用于带数字键盘的数字部分
  • UITextField 2:用于字母(常规键盘)

当用户输入四位数字时,我能够自动跳转到第二个文本字段。

我为此定制了这种方法:

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string

现在我的问题是,当用户按下删除键而textfield 2为空时,有没有办法自动从textfield 2跳回到textfield 1。

我无法正常工作,因为当textfield 2为空时,不调用上述方法。

有没有人知道这样做的方法?

1 个答案:

答案 0 :(得分:2)

使用 textField.tag 标识您的textFields。例如,如果为texField 1和2分别分配标记0和1。

// You could do this in the textFieldDidBeginEditing method //

If (textField.tag == 0)
   {
  //Now the first textField must be active//
  // do the method you had posted above//
    }

If (textField.tag ==1)
                   {
  //Now the second textField must be active//

    }

检查键盘事件的逻辑在下面的链接中提供。或者,您也可以使用NSNotification检查键盘事件。

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(handleTextFieldChanged:)name:UITextFieldTextDidChangeNotification
        object:searchTextField];

在Stack Overflow上检查此问题,以检测Empty UITextField上的BackSpace Detect backspace in UITextField

您还可以使用本教程检测按下的键并检查BackSpace并将控制权转移回textField 1。 http://www.cocos2d-iphone.org/forum/topic/11725