2

OpenGL ESアプリケーションでキーボード入力を行う必要があるため、非表示のUITextFieldを作成し、コンテンツを表示するビューとともにメインウィンドウにサブビューとして追加しました。UITextFieldを使用してキーボードを制御しますが、単一の方向で正常に機能します。

次に、UIDeviceOrientation通知に基づいてOpenGLコンテンツを自分でローテーションすることにより、すべての方向をサポートするようにコードを変更しました。キーボードを回転させるために、UITextFieldのコントローラーのshouldAutoRotateInterfaceOrientationメソッドをオーバーライドし、すべての方向に対してYESを返しました。しかし、それでもキーボードが向きに応じて回転しないことがわかります。

手がかりはありますか?

4

1 に答える 1

0

UITextFieldを2番目の非表示ウィンドウに追加し、そのウィンドウをサブビューとしてメインウィンドウに追加することで、この問題を解決しました。これが許容できるかどうかはわかりませんが、私の問題は解決しているようです。

更新:iOS 4.0以降、非表示のウィンドウをサブビューとしてkeyWindowに追加すると、問題が発生するようです。アプリケーションをバックグラウンド、フォアグラウンド、バックグラウンド、そして最後にフォアグラウンドに送信すると、アプリケーションがクラッシュします。したがって、非表示のウィンドウをぶら下げたままにしておくだけで、引き続き機能するはずです。

于 2011-06-10T10:43:54.960 に答える