2013-05-03 75 views
-2

如何以编程方式创建UITextField时由于触摸返回键而从视图中删除键盘。以编程方式resignFirstResponder

如果在viewDidLoad中调用了UITextField,我知道如何做到这一点,但UITextField是作为 - (IBAction)的结果创建的。

我创造了我的UITextField编程。我知道resignFirstResponder删除键盘。我把它设置为做到这一点,当屏幕被录音outsie键盘。我也有它的工作,如果用户触发与UITextField有关的UIButton的IBAction键盘消失。我也希望能够隐藏键盘,当用户从键盘返回。

+2

什么是对这些问题的答案都向下票? – Dancreek 2013-05-03 16:44:27

回答

0

您可以使用此:

- (BOOL)textFieldShouldReturn:(UITextField *)textField { 
    [textField resignFirstResponder]; 
    return NO; 
} 

你需要设置你的文本字段的delegateself第一,虽然:从

self.textField.delegate = self; 

或者,你可以用鼠标右键单击并拖动IB中的文本字段到底部的小橙色圈。

IB

+0

你为什么说“回归NO;”?它以任何方式工作。只是想知道你会为BOOL放置NO。 – James 2013-05-03 16:54:33

+0

@詹姆斯因为你*有*返回的东西,而NO是什么出来时,我掷出一些骰子。 – Undo 2013-05-03 17:25:23

1

你需要让自己UITextFieldDelegate和实施:

- (BOOL)textFieldShouldReturn:(UITextField *)textField { 
    [textField resignFirstResponder]; 
    return YES; 

} 

确保您的文本框的委托,当您创建它设置为self