当按下“完成/返回”button时如何隐藏文本框键盘Xcode 4.2

我在界面生成器中创build了一个文本字段。 我将它设置为“返回键”完成。 这是一个只有一行input(所以它不会需要多行)。

如何在用户点击完成button时隐藏虚拟键盘?

实现委托方法

- (void)viewDidLoad { [super viewDidLoad]; self.yourIBtextField.delegate = self; } - (BOOL)textFieldShouldReturn:(UITextField *)textField { [textField resignFirstResponder]; return NO; } 

当用户点击返回键时,UITextView没有任何方法。

即使如此,如果你想这样做,实现UITextViewDelegate的textView:shouldChangeTextInRange:replacementText:方法,并检查replace文本是否\ n,隐藏键盘。

可能还有其他的方法,但我没有意识到。

确保你声明了对UITextViewDelegate协议的支持。

 - (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text { if([text isEqualToString:@"\n"]) { [textView resignFirstResponder]; return NO; } return YES; } 

我希望这会有所帮助。

使用下一个方法在UIViewController上进行分类

 - (void)hideKeyboard { [[UIApplication sharedApplication] sendAction:@selector(resignFirstResponder) to:nil from:nil forEvent:nil]; }