4

約45日間エラーに対処しています。すでに数十回のメソッド呼び出しを試し、プログラム全体を変更しましたが、何も機能しません。

rootViewController である UIViewController と共に GLES 2 を使用します。この UIViewController には、層クラスが CAEAGLLayer である UIView タイプのビューがあります。

アプリケーションを実行すると、画面が黒くなり、画面を押してもイベントが生成されません。

アプリを回転させると、画面が表示され、イベントが機能します。さらに悪いことに、アプリケーションを回転させずに、presentRenderbuffer の直後にブレークポイントを配置し、Xcode 内の [OpenGL ES フレームのキャプチャ] ボタンを押すと、画面が表示され、イベントが開始されます!!!

私が感じているのは、ビューが実際には表示されていないということですが、viewWillLayoutSubviews、viewWillAppear、viewDidAppear、loadView (すべてを開始する場所) を実装すると、これらすべてのメソッドがこの順序で呼び出されます。

ロード ビュー ビューが表示されます ビューがレイアウト サブビュー ビューが表示されました

また、ビューには実際に有効なフレーム サイズがあります。

この絶望的なユーザーにとって、どんな助けも大歓迎です。

ギーチ

4

1 に答える 1

2

この問題の解決策は、すべてのウィンドウが作成されるメインスレッドでコンテキストを設定し、を呼び出してすべてのスレッド間でオープンGLコンテキストを共有することでした。

[EAGLContext setCurrentContext:glcontext]

各スレッドで

于 2013-01-14T20:32:42.737 に答える