私は作業している簡単なテストアプリケーションを持っています。これは後で大きなアプリケーションにインポートされますが、実際のアプリケーションとマージする前に、まずそれを動作させたいと思っています。それは3つの線形レイアウトを持っています。最初のものはmainLayoutで、他の2つはmailLayoutのchild1とchild2です。子供が開いている私はGLSurfaceviewとchild2私はテキストビューを配置します。glSurfaceViewを保持する線形レイアウトを削除して再追加すると、画面に何も描画されません
glSurfaceViewには、2d画像を取り込み、7秒間画面に描画するカスタムレンダラがあります(onDrawFrameごとにちょっとしたことがあります)。 7秒後に次のイメージが同じレンダラーによってロードされ、画面に表示されます。これは無限に繰り返されます。
私は最初のイメージが適切に表示されています。最初の7秒後、私はmainlayoutからchild1とchild2を削除します。次に、2番目の画像を読み込んでテクスチャを作成します。それから私はchild1とchild2を戻します。
私が見る問題は、何も画面に表示されていないということです。また、Renderersメソッド(onDrawFrame、onSurfaceChanged、またはonSurfaceCreated)のどれも呼び出されていません。
メインレイアウトからchild1とchild2を削除しないと、2番目のイメージが正しく表示されます。私がメインレイアウトからすべての子を削除する必要がある理由は、実際のアプリケーションでは、ユーザーが画面上にドラッグしたかもしれないレイアウト/ビューがオーバーレイされている可能性があるからです。次の画像の前に削除する必要があります。
私はここで間違っていますか?ご協力いただきありがとうございます。