在全面屏上用IQKeyboardManager管理键盘高度时发现,底部的UITextfield键盘弹出时老是会和键盘空出一段。
适配全面屏iPhone X没有适配好?这框架这么垃圾?

image.png

image.png

百度无果,直接扒源码。对了我用的是swift版本,oc应该差不多吧。
找到了这个地方
image.png
红框框出来的地方就是核心。

如果textFieldViewUIScrollView并且在编辑状态高度为0,否则就为layoutMargins.bottom。

解决办法1

难道把我自己写的UITextfield 改成UITextView就好了?
我试了一下果然就可以了。图我就不贴了,因为此方法我不推荐。

解决办法2

那我去改变默认的layoutMargins.bottom行不行!
于是在viewdidload中加入一句话

1
2
3
4
5
if #available(iOS 11.0, *) {
view.insetsLayoutMarginsFromSafeArea = false
} else {
// Fallback on earlier versions
}

image.png

完美搞定!