我目前正在 iOS11 上测试我的应用程序,我在翻译 View 的 Controller 中发现了一个问题。该 Controller 由顶部的表格 View 和底部的用于输入文本的字段组成。 在 iOS9 和 10 上,以下代码允许底部字段在键盘顶部进行翻译。 然而在 iOS11 上却没有任何反应。
func keyboardWillAppear(_ notification: NSNotification) {
if let keyboardSize = (notification.userInfo?[UIKeyboardFrameBeginUserInfoKey] as? NSValue)?.cgRectValue {
self.bottomView.transform = CGAffineTransform(translationX: 0, y: -keyboardSize.height)
self.attachmentView?.transform = CGAffineTransform(translationX: 0, y: -keyboardSize.height)
self.classicTableView.contentInset = UIEdgeInsetsMake(0.0, 0.0, keyboardSize.height + 10.0, 0.0);
}
}
您知道行为发生变化的原因吗?我该如何解决这个问题?
提前谢谢
最佳答案
尝试将 UIKeyboardFrameBeginUserInfoKey
更改为 UIKeyboardFrameEndUserInfoKey
,如下所示
if let keyboardSize = (notification.userInfo?[UIKeyboardFrameEndUserInfoKey] as? NSValue)?.cgRectValue
也许对你有帮助
关于ios - Swift - iOS 11 翻译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46092316/