2011-03-29 245 views
4

在iphone上。当我按下uitextfield时,我不想让键盘弹出。uitextfield隐藏键盘?

我想要相同的行为,只是没有键盘。如何在用户按下uitextfield时隐藏/关闭键盘?

回答

7

如果你想完全相同的行为,没有键盘,尝试

textfield.inputView = [[[UIView alloc] initWithFrame:CGRectZero] autorelease]; 
6

返回否UITextFieldDelegate- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField应该这样做。

+0

这是愚蠢的,但如何在

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { [self.view endEditing:YES]; } 

或 驳回键盘触摸视图中的任何地方我该怎么办这个? – user648244 2011-03-29 21:43:25

+3

这很简单,你的viewController应该是textfield的委托(你可以在界面生成器中做到这一点),然后你只需在你的viewController中实现该函数并返回NO。我希望这有帮助! – 2011-05-16 10:14:46

0

我觉得你可以在委托方法使用

textfield resignFirstResponder

-

(void)textFieldDidBeginEditing:(UITextField *)

textField like这样的:

-(void)textFieldDidBeginEditing:(UITextField *)textField 
{ 
    if (textField == yourTextField){ 
     [yourTextfield resignFirstResponder]; 
    } 
} 
0

使用这种方法通过点击键盘完成按钮

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