当我点击UITextField时如何调用方法?

时间:2011-02-08 09:37:30

标签: iphone uitextfield

我想问一下如何在iphone UITextField中单击(触摸开始写入)来调用方法,就像我们单击UIButton并将方法放在“addTarget”中一样,UITextFields有什么方法吗?

4 个答案:

答案 0 :(得分:12)

实施UITextFieldDelegate并在- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField- (void)textFieldDidBeginEditing:(UITextField *)textField

中执行您想做的任何事情

如果要停止文本字段的行为,则应使用第一种方法。例如,如果要在模态视图中打开文本字段编辑器。如果您不想要此行为,则可以返回NO。


编辑:以下是调用myMethod的代码:

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField { 
    [self myMethod]; 
    return YES; 
}

答案 1 :(得分:3)

您可以设置textField的委托并在其中实现textFieldShouldBeginEditing:方法 - 当用户点击字段并进入编辑之前,将调用该方法。

有关更多可用方法,请参阅UITextFieldDelegate参考。

答案 2 :(得分:2)

[textField addTarget:self action:@selector(myMethod:) forControlEvents:UIControlEventEditingChanged];

-(void) myMethod:(id)sender
{
    UITextField* textField =  (UITextField *)sender;

}

我认为这会有所帮助.. !!

答案 3 :(得分:0)

您可以编码为,

[YourTextField addTarget:self action:@selector(myMethod:) forControlEvents:UIControlEventEditingDidBegin];

-(void)myMethod
{
 [YourTextField resignFirstResponder];
 //Do whatever you want
}