我试图为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