【发布时间】:2011-08-03 04:16:42
【问题描述】:
我试图让键盘在触摸屏幕时消失,这个问题在 stackoverflow 中得到了全面解答。多亏了这里的一个线程,当按下回车键时,我能够让键盘消失。我在后台触摸辞职第一响应者时运气不佳。正在输入方法,我在方法中有一个 NSLog 说,“在 backgroundTouched 中”,但键盘还在。
我尝试将 UIView 设为 UIControl 类,以便可以使用触摸事件。 journalComment 是一个 UITextView。
-(IBAction)backgroundTouched:(id)sender
{
[journalComment resignFirstResponder];
NSLog(@ "in backgroundTouched");
}
我还尝试在调用 backGroundTouched 方法的所有内容下添加一个不可见按钮。我想可能是我在界面生成器中遗漏了一些东西,但我不确定是什么。
感谢您的帮助!
这适用于完成按钮:
-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range
replacementText:(NSString *)text
{
// Any new character added is passed in as the "text" parameter
if ([text isEqualToString:@"\n"]) {
// Be sure to test for equality using the "isEqualToString" message
[textView resignFirstResponder];
// Return FALSE so that the final '\n' character doesn't get added
return FALSE;
}
// For any other character return TRUE so that the text gets added to the view
return TRUE;
}
【问题讨论】:
-
你要辞去视图中所有输入元素的第一响应者吗?
-
这是一个滚动视图,带有三页按钮,“好心情,坏心情等”,然后是一个 textview 评论框。我是否需要将按钮辞职,因为它们首先被触摸。我将在顶部添加适用于完成按钮的代码。
-
也尝试为滚动视图辞职第一响应者。
-
谢谢,但也没有运气。
标签: objective-c keyboard uitextview hide