在很多应用中,例如iPhone自带的Safari浏览器,当我们点击表单输入框时,软件盘右上方会有一个完成按钮,点击完成按钮可以关闭当前软键盘,当表单页面内容比较长,软键盘覆盖了表单提交按钮时,提供一个隐藏当前表单的操作变得相当有用,那么这个功能是如何实现的呢,如下图:
ps://dailyios.oss-cn-shenzhen.aliyuncs.com/6e14b7dc797a9e440c1d.gif" />
其实这个功能实现起来相当简单,使用内置的UIToolBar控件即可,接下来我们为UITextField或者UITextView控件实现一个类似的效果,我们不妨以UITextField为例:
1. 在Storyboard中添加一个UITextField控件,如下图:
然后为这个控件设置一个@IBOutlet成员属性:
@IBOutlet weak var textField: UITextField!
2. 为这个textField添加一个UIToolbar子控件:
let toolbar = UIToolbar()
//使toolbar大小适应键盘大小
toolbar.sizeToFit()
toolbar.tintColor = self.view.tintColor
// 为这个按钮绑定一个关闭键盘的事件函数
let done = UIBarButtonItem.init(barButtonSystemItem: .Done, target: self, action: "keyboardOff") ;
// 为了使按钮具有现实,填充一个flexble占位按钮
let flexbleButton = UIBarButtonItem.init(barButtonSystemItem: .FlexibleSpace, target: nil, action: nil) ;
toolbar.items = [flexbleButton, done] ;
self.textField.inputAccessoryView = toolbar;
3. 完成点击事件:
我们需要在点击该按钮的时候,关闭当前软件,那么需要实现第二步添加的keyboardOff函数,当按钮被点击的时候此函数会相应:
/**
按钮点击回调
*/
func keyboardOff(){
self.textField.resignFirstResponder()
}
labubu官网购买直达-labubu官网最新价格
漫蛙manwa漫画官方入口-漫蛙漫画app2026免费极速下载
Nano-banana-pro官网直连入口-Nano-Banana-2国内精准直达链接
小鸡漫画官方客户端下载入口在哪安装最新版本-小鸡漫画下载安卓版安装教程免费看
Nano-banana-pro官网直达入口-Nano-banana-pro网页版快捷登录
秘塔网页版官方入口-秘塔官网登录快捷通道