textFieldShouldBeginEditing检查参数是否是特定组件

时间:2014-02-06 08:27:49

标签: storyboard uitextfield

textFieldShouldBeginEditing中的

我正在检查是这样触发了哪个UITextField:

if(textField == self.nameText)
{
    textField.keyboardType = UIKeyboardTypeDefault;
}

else
{
    textField.keyboardType = UIKeyboardTypeNumberPad;
}

if语句是真的,即使它不是nameText文本字段,我已经在故事板中检查过,如果我错误地将多个UITextField附加到此属性而我没有这样做我不知道为什么这是发生或我应该检查什么

欢迎提出建议

1 个答案:

答案 0 :(得分:2)

最好使用tag属性进行比较。 您可以在viewDidLoad中设置标记值

e.g. self.nameText.tag = 22;


或视觉上

Tag value can be assigned visually

if(textField.tag == self.nameText.tag)
{
   textField.keyboardType = UIKeyboardTypeDefault;
}
else
{
   textField.keyboardType = UIKeyboardTypeNumberPad;
}