在为 iOS 开发应用程序时,我遇到了一个奇怪的问题。
准确的说,是一款聊天应用。在聊天 View Controller 中,消息输入框出现时应该粘在键盘上。我已经得到了包含 UIKeyboardWillChangeFrameNotification
的那个。
但是,问题是当我从默认键盘更改为稍微高一点的表情符号键盘时,不会调用此通知,不会调用通知(我同时引导 UIKeyboardWillChangeFrameNotification
和 UIKeyboardDidChangeFrameNotification
到同一个选择器,它们都没有被调用,我已经通过执行 NSLog
并设置断点来测试它)。这导致键盘与消息框重叠。我制作了一些屏幕截图来可视化问题。
Default keyboard
Emoji keyboard
我已经在 iPhone X 和 iPhone 8 Plus 模拟器上对其进行了测试,但一切都很好,因为自动完成栏弥补了两个键盘之间的差异。
我是否实现了错误的通知?我该如何解决这个问题?
最佳答案
好吧,这似乎是 iOS 11 中的一个实际错误。它似乎已在 iOS 11.2.6 中修复。
关于ios - UIKeyboardWillChangeFrameNotification 并不总是被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48009053/