我有滾動視圖視圖控制器內,我在故事板設置它以這種方式(帶自動版式):滾動視圖和鍵盤問題斯威夫特
正如你可以看到我添加的所有對象最後一個視圖(稱爲'viewsotto')在滾動視圖中。 我的問題是: 這些對象中的一些是textfield,我希望當我點擊它和鍵盤顯示它可以在文本框下方,以便我可以看到我寫入的內容。 爲此,我做了這種方式:
NotificationCenter.default.addObserver(self, selector: #selector(userProfiloGiusto.keyboardWillShow), name: NSNotification.Name.UIKeyboardWillShow, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(userProfiloGiusto.keyboardWillHide), name: NSNotification.Name.UIKeyboardWillHide, object: nil)
func keyboardWillShow(notification: NSNotification) {
if let keyboardSize = (notification.userInfo?[UIKeyboardFrameBeginUserInfoKey] as? NSValue)?.cgRectValue {
if self.view.frame.origin.y == 0{
self.view.frame.origin.y -= keyboardSize.height
}
}
}
func keyboardWillHide(notification: NSNotification) {
if let keyboardSize = (notification.userInfo?[UIKeyboardFrameBeginUserInfoKey] as? NSValue)?.cgRectValue {
if self.view.frame.origin.y != 0{
self.view.frame.origin.y += keyboardSize.height
}
}
}
,但它不工作。我究竟做錯了什麼?
檢查無需編碼https://github.com/hackiftekhar/IQKeyboardManager – karthikeyan
@karthikeyan是對的。它也容易實現。 – vaibby
謝謝。太奇妙了!! –