iphone使用标记检查UITextField是否存在

iphone使用标记检查UITextField是否存在,iphone,uitextfield,uiresponder,Iphone,Uitextfield,Uiresponder,是否有方法使用Tag属性检测UITextField是否存在?基本上,我有许多动态创建的文本字段,我想使用键盘上的返回键在这些字段之间进行制表 我试图从另一篇文章中使用下面的代码,但“textField.superview”返回null。我正在以编程方式创建文本字段 -(BOOL)textFieldShouldReturn:(UITextField*)textField; { NSInteger nextTag = textField.tag + 1; // Try to find nex

是否有方法使用Tag属性检测UITextField是否存在?基本上,我有许多动态创建的文本字段,我想使用键盘上的返回键在这些字段之间进行制表

我试图从另一篇文章中使用下面的代码,但“textField.superview”返回null。我正在以编程方式创建文本字段

-(BOOL)textFieldShouldReturn:(UITextField*)textField;
{
  NSInteger nextTag = textField.tag + 1;
  // Try to find next responder
  UIResponder* nextResponder = [textField.superview viewWithTag:nextTag];
  if (nextResponder) {
    // Found next responder, so set it.
    [nextResponder becomeFirstResponder];
  } else {
    // Not found, so remove keyboard.
     [textField resignFirstResponder];
  }
  return NO; // We do not want UITextField to insert line-breaks.
}

您是否设置了文本字段的标记?标记字段不是自动设置的,您必须在创建文本字段时自行设置,以便以后识别。如果不设置,它们都默认为0-因此您将永远找不到任何文本>0的字段。

您可以这样直接检查

       -(BOOL)textFieldShouldReturn:(UITextField*)textField {
             if (textField.tag == 1) {
             //Do the stuff what you want here
             }
        }
 if ([[textField.superview viewWithTag:nextTag] isKindOfClass:[UITextField class]])
  {
    // Found next responder, so set it.
    [(UITextField *)[textField.superview viewWithTag:nextTag] becomeFirstResponder];
  } else {
    // Not found, so remove keyboard.
     [textField resignFirstResponder];
  }
  return NO; // We do not want UITextField to insert line-breaks.
}
用于设置标记

        textFieldName.tag = 1;

您可以使用isKindofClass:method

       -(BOOL)textFieldShouldReturn:(UITextField*)textField {
             if (textField.tag == 1) {
             //Do the stuff what you want here
             }
        }
 if ([[textField.superview viewWithTag:nextTag] isKindOfClass:[UITextField class]])
  {
    // Found next responder, so set it.
    [(UITextField *)[textField.superview viewWithTag:nextTag] becomeFirstResponder];
  } else {
    // Not found, so remove keyboard.
     [textField resignFirstResponder];
  }
  return NO; // We do not want UITextField to insert line-breaks.
}

我需要做的是使用标记检查是否存在具有给定int的textfield。我在创建它们时设置标记。因此,我将执行类似NSInteger nextTag=textField.tag+1的操作;在textfield中应该返回,但我需要查看是否存在具有nextTag值的字段。我该怎么做?我想我的答案对你有用