2014-10-07 60 views
0

我想在用户单击键盘的返回按钮后隐藏键盘。UITextView resignFirstResponder不起作用

我使用这个功能来隐藏:

- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range 
replacementText:(NSString *)text 
{ 
    if ([text isEqualToString:@"\n"]) { 

     [textView resignFirstResponder]; 

     return NO; 
    } 
    return YES; 
} 

当TextView中为空,此功能的作品,但一旦在TextView的一个人物,没有任何反应和键盘犯规获得隐藏。

+2

您的代码是否经过'if'测试? – Larme 2014-10-07 16:26:34

+0

如果您只允许一行文本,您为什么要使用文本视图而不是文本字段? – rmaddy 2014-10-07 16:28:47

+0

你可能应该使用UITextField。在这里看到答案:http://stackoverflow.com/a/704197/2708650 – 2014-10-07 16:30:09

回答

2

我会建议使用[self endEditing:YES];self.view endEditing:YES]

+2

有一个重要的区别:'resignFirstResponder'接受等待自动修正建议'endEditing'不。 – fluidsonic 2014-10-07 16:40:06

+0

哦,没想到问题是要删除KB。 – ColdSteel 2014-10-07 16:41:42

0

找到了答案。是我的错。我有一个功能,一旦用户完成编辑,我正在检查它是否为空。出于某种原因返回否,而不是。感谢您的帮助

相关问题