关于swift3.0关于弹出键盘高度的问题

用swift3.0做项目,想自己写个关于解决键盘不遮挡视图的方法,本以为很简单,没想到原来的方法用不了了,后来解决了,记录下。

1.通知还是那个通知,但是写法就变了一些

//MARK: 避免键盘弹出遮挡视图的通知
NotificationCenter.default.addObserver(self, selector: #selector(KXSLAddLockViewController.keyboardWillHide), name: NSNotification.Name.UIKeyboardWillHide, object: nil)

2.在接到通知后执行的方法中,需要如下处理才可以得到真正的高度,剩下的就好办了,就是改变视图的位置避免遮挡

 let dic:NSDictionary = notific.userInfo! as NSDictionary
        
        print(dic["UIKeyboardFrameEndUserInfoKey"]!)
        let a:AnyObject? = dic.object(forKey: UIKeyboardFrameEndUserInfoKey) as AnyObject?
        let endY = a?.cgRectValue.origin.y
        print(endY,"endY")

3.依然不要忘了移除观察者

你可能感兴趣的:(关于swift3.0关于弹出键盘高度的问题)