//MARK:属性列表
var toolBarCons: NSLayoutConstraint?
//MARK:视图生命周期
override func viewDidLoad() {super.viewDidLoad()
//注册通知
NSNotificationCenter.defaultCenter().addObserver(self,selector: "keyboardChangeAction:",name: UIKeyboardWillChangeFrameNotification,object: nil)
}
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(animated)
//弹出键盘
textView.becomeFirstResponder()
}
deinit{
//移除通知
NSNotificationCenter.defaultCenter().removeObserver(self)
}
//MARK:自定义方法
//通知调用方法
@objc private func keyboardChangeAction(notification: NSNotification){
let keyboardRect = notification.userInfo![UIKeyboardFrameEndUserInfoKey]!.CGRectValue
let duration = notification.userInfo![UIKeyboardAnimationDurationUserInfoKey]!.doubleValue
//取到你自己toolBar的约束
toolBarCons?.constant = -UIScreen.mainScreen().bounds.size.height + keyboardRect.origin.y UIView.animateWithDuration(duration) { () -> Void in self.view.layoutIfNeeded() } } //懒加载 -- 工具栏 private lazy var toolBar:UIToolbar = { let toolBar = UIToolbar() toolBar.backgroundColor = UIColor(white: 0.8,alpha: 1) return toolBar }()