textFieldDidBeginEditing

textFieldDidBeginEditing

我对iPhone编程相当陌生,在这里我面临一些问题。现在在我的应用程序中,我有两个文本字段,我想在第二个文本字段开始编辑时触发一个事件。现在我正在使用以下功能
- (void)textFieldDidBeginEditing:(UITextField *)textField
但事实是,第一个文本字段开始编辑时会触发该事件。它不等待第二个文本字段。有什么方法可以对第二个文本字段使用此功能,或者可能以某种方式知道并向其传递事件文本字段的值?

我尝试在函数中编写文本字段的名称,而不是(UITextField *)textField的名称,但结果仍然相同。

最佳答案

如果我是您,则可以将第二个textField的标记(在Interface Builder中)设置为2或类似的标记。然后,您可以执行以下操作:

-(void)textFieldDidBeginEditing:(UITextField *)textField {
    if (textField.tag == 2) {
        //this is textfield 2, so call your method here
    }
}

编辑:请执行此操作以查看该方法是否被调用:
-(void)textFieldDidBeginEditing:(UITextField *)textField {
    NSLog(@"The method was called");
}

对于 Swift 2.2
func textFieldDidBeginEditing(textField: UITextField) {
    if textField.tag == 2 {
        //this is textfield 2, so call your method here
    }
}

关于iphone - textFieldDidBeginEditing : for more than one textfield,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5683376/

10-10 14:22