前提:
1)基于storyboard实现以下功能;
2)使用storyboard,创建好textField、UIButton:
3)Outlet在storyBoard新建的textField。
思路: 重新分配当前触发软件的控件的焦点,UIKit的resignFirstResponder()函数可以重新分配焦点。
1. 点击软键盘的“return”、“next”、“go”等是软键盘失去焦点;
说明:要实现这个功能,不能使用默认的事件,需要使用Did Edit On Exit事件。
1.1 使用拖拽法,从storyBoard添加事件到controller:
1.2 在textExitAction函数里面,使用resignFirstResponder()函数重新分配焦点。
2.点击button使软键盘失去焦点;
2.1 button通过默认事件使textfield失去焦点即可:
Tip:是使textfield失去焦点,不是sender(自己)失去焦点。
3.点击背景使软键盘失去焦点。
说明:这个功能也是通过事件实现,但是view默认是没有事件的,要有事件,我们就需要去改变当前这个view的继承。
3.1 修改继承:
3.2 添加touchdown事件到controller:
3.3 同样通过resignFirstResponder()函数重新分配焦点:
Tip: 同样也是让textField失去焦点,不是sender。