欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

iOS横屏弹键盘的高度错误异常解决

程序员文章站 2022-03-25 12:49:26
问题:横屏下第一次弹出键盘高度异常- (void)handlekeyboardwillshownotification:(nsnotification *)notification { nsti...

问题:横屏下第一次弹出键盘高度异常

弹出新window,rootviewcontroller里面有个 uitextfield ,然后调用 becomefirstresponder ,启动app,第1次弹出键盘时,会走进两次通知,打印键盘高度:

这两个高度都是错误的,会导致键盘上面的工具条错位:

iOS横屏弹键盘的高度错误异常解决

第2次弹出键盘时:打印键盘高度为:

这时候就是正常的高度了。

需要解决第一次异常的问题。

解决:直接取子view判断

iOS横屏弹键盘的高度错误异常解决

查看层级,发现键盘window有个子view uiinputsethostview,这就是键盘显示的父view,这时候取得这个view,也就取得了键盘的真正高度:

其中 tkp_findsubview: 方法为 uiview 的分类方法:

总结

到此这篇关于ios横屏弹键盘的高度错误异常解决的文章就介绍到这了,更多相关ios横屏弹键盘高度内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

相关标签: ios 横屏 键盘