Unity IOS 软键盘输入框问题

Unity的软键盘输入框在IphoneX上第一次打开时,有一半会飞到屏幕外面,研究后发现是因为软键盘输入框在计算高度时候没将整个游戏的frame的偏移设置进去,而第一次打开输入框的时候偏移较大,所以飞到界面外面了。

知道问题了就好办了,打开Unity导出的IOS工程的Class/UI/Kayboard.mm文件,找到里面的positionInput方法,将

editView.frame  = CGRectMake(0, y - kToolBarHeight, kbRect.size.width, kToolBarHeight);

替换为

editView.frame  = CGRectMake(0, y - kToolBarHeight - [UnityGetGLView() frame].origin.y, kbRect.size.width, kToolBarHeight);

即可解决。

 

可直接下载该文件替换:https://download.csdn.net/download/yhjsspz/12021727

你可能感兴趣的:(Unity IOS 软键盘输入框问题)