在很多应用中,例如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()
}
茶杯头甜蜜终章dlc 官方手机版v1.0.0.3
下载火柴人传说暗影格斗内置菜单 最新版v3.0.1
下载荒野乱斗测试服 安卓版v61.10.3
下载荒野乱斗彩虹服 安卓版v61.10.3
下载寒霜启示录 安卓版v1.25.10
寒霜启示录是一款生存模拟游戏,不少玩家可能对于末日都有着自己
末日城堡免广告版 安卓最新版v0.7.1
末日城堡免广告版是一款非常好玩的模拟经营类游戏,内部可以不看
甜蜜人生模拟器 最新版v1.4.5
甜蜜人生模拟器是一款非常好玩的模拟恋爱手游,玩家在这里能够对
武器锻造师内置功能菜单 v10.4
武器锻造师内置菜单版是游戏的破解版本,在该版本中为玩家提供了
开放空间overfield 安卓版v1.0.5
开放空间Overfield是一款箱庭养成经营手游,让你在广阔