Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/98.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios iPhone OpenGL ES应用程序中的屏幕键盘定位问题_Ios_Opengl Es_Orientation_Virtual Keyboard_On Screen Keyboard - Fatal编程技术网

Ios iPhone OpenGL ES应用程序中的屏幕键盘定位问题

Ios iPhone OpenGL ES应用程序中的屏幕键盘定位问题,ios,opengl-es,orientation,virtual-keyboard,on-screen-keyboard,Ios,Opengl Es,Orientation,Virtual Keyboard,On Screen Keyboard,我需要在OpenGL ES应用程序中进行键盘输入,因此我刚刚创建了一个隐藏的UITextField,并将其作为子视图添加到主窗口中,同时显示我的内容。我使用UITextField来控制键盘,它可以在单一方向上正常工作 然后,我根据UIDeviceOrientation通知自行旋转OpenGL内容,修改代码以支持所有方向。要旋转键盘,我在UITextField的控制器中重写了shouldAutoRotateInterfaceOrientation方法,并对所有方向返回YES。但我仍然看到键盘并没有

我需要在OpenGL ES应用程序中进行键盘输入,因此我刚刚创建了一个隐藏的UITextField,并将其作为子视图添加到主窗口中,同时显示我的内容。我使用UITextField来控制键盘,它可以在单一方向上正常工作

然后,我根据UIDeviceOrientation通知自行旋转OpenGL内容,修改代码以支持所有方向。要旋转键盘,我在UITextField的控制器中重写了shouldAutoRotateInterfaceOrientation方法,并对所有方向返回YES。但我仍然看到键盘并没有按照方向旋转


有什么线索吗?

我解决了这个问题,将UITextField添加到第二个隐藏窗口中,并将该窗口作为子视图添加到我的主窗口中。不确定这是否可以接受,但它似乎解决了我的问题


更新:自从iOS 4.0以来,将隐藏窗口作为子视图添加到keyWindow似乎破坏了一切。如果将应用程序发送到后台,然后是前台,然后是后台,最后是前台,则应用程序会崩溃。因此,只需将隐藏窗口挂起,它仍然可以工作。

我通过将UITextField添加到第二个隐藏窗口并将该窗口作为子视图添加到主窗口来解决此问题。不确定这是否可以接受,但它似乎解决了我的问题

更新:自从iOS 4.0以来,将隐藏窗口作为子视图添加到keyWindow似乎破坏了一切。如果将应用程序发送到后台,然后是前台,然后是后台,最后是前台,则应用程序会崩溃。所以,只要把隐藏的窗户挂起来,它应该还能工作