我試圖爲iOS創建一個聊天界面,根據鍵盤的存在展開和縮小。如何根據鍵盤大小正確實現縮小和擴大視圖?
我已經實現了它使用鍵盤的觀察員將顯示並將消失通知及其工作。
func keyboardWillDisappear(notification: NSNotification){
var userInfo:NSDictionary = notification.userInfo!
var keyboardSize = userInfo.objectForKey(UIKeyboardFrameEndUserInfoKey)!.CGRectValue().size
var oldViewFrame : CGRect = self.view.frame
self.view.frame = CGRectMake (0, 0, oldViewFrame.width, oldViewFrame.height + keyboardSize.height)
}
func keyboardWillAppear(notification: NSNotification){
var keyboardSize = userInfo.objectForKey(UIKeyboardFrameEndUserInfoKey)!.CGRectValue().size
var oldViewFrame : CGRect = self.view.frame
self.view.frame = CGRectMake (0, 0, oldViewFrame.width, oldViewFrame.height - keyboardSize.height)
}
現在在一定程度上,如果用戶試圖激活或關閉預測鍵入建議的東西炸燬這個作品不過。 keyboardWillAppear被調用,但keyboardWillDisappear不和,因此視圖中再次縮小,再每一次預測都是啓用
必須有在做這個簡單和更安全的方式,如果有其他的事情,我應該注意請告訴我。 感謝
你在用什麼樣的視圖? 'UIScrollView'會自動爲你處理。如果不是這樣,你可能會想在網上找到一個你可以實現的庫來處理它,否則它很麻煩。 – pbush25
我使用單元格作爲收到的消息的表格視圖 – DatForis