0

我有一个 TextView,我想在触摸屏幕上的任何位置(包括 textView 本身)时隐藏键盘,请给出一些建议。

4

2 回答 2

1

我不是 Objective-C 专家,但对我有用的是UITapGesterRecognizer在 Interface Builder 中将 a 拖到我的视图上,然后在我的 .h 文件中创建 IBOutlet 并在我的 .m 文件中创建 IBAction 。我正在使用 XCode 5 和 iOS 7 - 见下文:

.h 文件

@property (strong, nonatomic) IBOutlet UITapGestureRecognizer *dismissKeyboard;

.m 文件

- (IBAction)dismissKeyboard:(UITapGestureRecognizer *)sender {

    [self.view endEditing:YES];
}

此代码的endEditing: 部分关闭键盘。来自苹果的文档

endEditing 导致视图(或其嵌入的文本字段之一)放弃第一响应者状态。

至于点击“textView 本身” - 我不知道该怎么做并关闭键盘。只是出于好奇,你为什么想要那个功能?

于 2013-10-05T23:07:48.217 回答
0

在 UIViewController 子类中,基本逻辑是

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
    [self.view endEditing:YES];
}
于 2013-10-05T23:38:10.837 回答