關(guān)鍵是得到新的y點(diǎn),這樣就可以得到輸入框的新位置。
keyboardWillChangeFrame可以監(jiān)控鍵盤的新位置酗捌,鍵盤的y減去兩倍的輸入框值就是輸入框的新位置y
效果如圖所示
Simulator Screen Shot - iPhone 12 - 2022-01-10 at 09.28.21.png
Simulator Screen Shot - iPhone 12 - 2022-01-10 at 09.28.27.png
//動(dòng)態(tài)監(jiān)聽鍵盤
@objc func keyboardWillChangeFrame(_ notification:NSNotification) {
let info = notification.userInfo
let keyboardRect = (info?[UIKeyboardFrameEndUserInfoKey] as! NSValue).cgRectValue
var blueRect = self.v.bottomToolBar.frame
blueRect.origin.y = keyboardRect.origin.y - blueRect.size.height * 2
Logger.log("鍵盤y\(keyboardRect.origin.y)==\(blueRect.origin.y)")
UIView.animate(withDuration: 0.3) {
self.v.bottomToolBar.frame = blueRect
}
}