0

2つのサーフェスビューを相互に設定して、一方がCameraPreviewを保持し、もう一方がOpenGLサーフェスを保持するようにする方法はありますか。

私はこの問題を試みました、そして私の試みは以下の(code1とcode2)に記載されています

コード 11-このコードでは、1行目に記載されているコマンドでカメラを開きます2-レンダリングクラスからオブジェクトをインスタンス化し、setContentView()を使用してこのオブジェクトをsurfaceViewに追加します

ただし、この場合、カメラが数秒間開いて消えると、OpenGlオブジェクトが表示されます。

public void surfaceCreated(SurfaceHolder holder) {

    camera = android.hardware.Camera.open(); //line 1
    //gLSurfaceView = new GLSurfaceView(this);
    //gLSurfaceView.setRenderer(new MyRender());
    //setContentView(gLSurfaceView);
}

コード2 このコードでは、CameraSurfaceとRenderクラスの両方をインスタンス化します。また、XMLファイルにFrameLayoutを作成しました。次に、camerSurfaceオブジェクトがsetContentViewに追加され、RenderオブジェクトがFrameLayoutに追加されます。ただし、この方法では、フレームレイアウトに追加されたオブジェクトのみが表示されます。

cameraSurfacePreviewDemo = new CameraSurfacePreviewDemo(this);
    glSurfaceView = new GLSurfaceView(this);
    glSurfaceView.setRenderer(new MyRender());
    //setContentView(cameraSurfacePreviewDemo);
    //setContentView(glSurfaceView);
    //fl01.addView(glSurfaceView);
    //fl01.addView(cameraSurfacePreviewDemo);

================================================== =========================================Androidの初心者向けの優れたチュートリアルを備えたプロビジョニングCamera and AndR "Augmented Reality"または、AndroidCameraとAndR"AugmentedRealityの両方の初心者に適した本を提案していただければ幸いです。

4

1 に答える 1

0

IIRCそれは不可能です。サーフェスビューはオーバーラップできません。(ダイアンハッケボーンからのより長い説明がありました)

于 2012-04-25T08:08:53.697 に答える