私はUIKitを使ってデバイスの回転を処理させています(iOSアプリケーションのUIViewController
はshouldAutorotateToInterfaceOrientation:
です)。OpenGLES 1.1でUIKitがデバイスの回転を処理させる - 実際にはそれはどんな場合でも遅いですか?
これまで、すべてのローテーション業務を手動で行うよりも時間がかかると言われてきました。しかし、iPad(iOS 4.2)でもiPod Touch 2G(iOS 4.2でも)のテストでは、これはサポートされていません。
私は、とにかく大きな違いがあると言われて少し驚きました.UpKitが動作するように見えるので、OpenGLESがページフリップを行う範囲がないように見えます。だから、-[EAGLContext presentRenderbuffer:]
は、回転状態に関係なく、基本的に同じ時間を要するコピーをほとんど作らなければならない。他の回転(一般的な座標変換)のオーバーヘッドは、私も同様に無視できると思います。
それは私の想いですが、私はそれをバックアップするために私の嘘の目だけを持っています!そこで、UIKitでデバイスの回転を処理させると実際に大きな違いが生じるケースがありますか?もしそうなら、彼らは何ですか?回転を処理するために、View Controllerを使用して
、私がしようとしてきたことがわかります私のOpenGL ES 1.1アプリケーションで動作するようにshouldAutorotateToInterfaceOrientationを取得してください。あなたはどこに関数を追加しますか? EAGLViewに追加しても何もしません。私はオートローテーションしたいツールバーを持っています。どんな提案も素晴らしいだろう。ありがとう。 – Davido
それ自体の質問です。簡単に言うと、その関数はビューではなく、ビューコントローラに移動する必要があります。 'UIViewController'からビューコントローラを派生させます。オーバーロード ' - (void)loadView'を実行し、そこにあなたのウィジェットの作成物を置いてください。あなたのinit関数から ' - [UIViewController initWithNibName:bundle:]'を呼び出します。次に、あなたのアプリケーションデリゲートの 'applicationDidFinishLaunching'関数から、そこにウィジェットを作成する代わりにView Controllerを作成してください。システムのようなものは残りの部分をします。 –