前言:根据产品需求,集成了一个客服聊天的第三方,第三方里面是使用苹果系统原生的方法观察键盘的弹出与消失。那么问题来了,在IPhone X上键盘第二次弹出时,状态栏会受到影响颜色改变了,和导航的颜色不一致,
问题原因:因为项目里面集成IQKeyBoardManager,而第三方的SDK里面是使用通知来监听,然后改变控件的高度,所以第三方键盘监听了键盘的弹出,原生的也进行监听,就出现了冲突。
解决办法:
1、在ViewWillAppear里面添加如下代码:
[IQKeyboardManager sharedManager].shouldResignOnTouchOutside = YES; [[IQKeyboardManager sharedManager] setEnable:NO];
2、在viewWillDisappear里面添加如下代码:
[[IQKeyboardManager sharedManager] setEnable:YES];