iOS让软键盘消失的简单方法

时间:2022-03-02 12:00:06

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处.

如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;)


一些文本输入控件等待输入时会弹出软键盘,我们可以设置这些控件的Did End On Exit之类的回调方法以在用户点击软键盘上的done或return之列的按键时收起键盘.

不过某些时候有些键盘没有上述的按键,或者我们希望点击App视图的背景时使软键盘收起来,无论当时软键盘是否打开.

一种办法是拖动一个按钮到View上,然后使其大小和View相同,然后设置点击该按钮的回调.

but,我们还可以有更简单的方法.

我们知道UIView本身没什么Action,不过它的子类UIControl却有不少,所以我们可以将View的类型从UIView变为UIControl,这样我们就可以免费获得想要的触摸事件了,所以第一步,将View类变为UIControl:

iOS让软键盘消失的简单方法

然后拖拽View到头文件,选择事件处理器:

iOS让软键盘消失的简单方法

最后我们完成回调方法的编写:

- (IBAction)bgTaped:(id)sender {
    [_text resignFirstResponder];
}

通过以上几个简单的步骤我们完成了我们想要的功能 ;)