有什么方法可以将两个表面视图相互设置,其中一个用于保存 CameraPreview,另一个用于保存 OpenGL 表面。
我已经尝试过这个问题,我的尝试在下面(code1和code2)中提到
代码 1 1- 在此代码中,我使用第 1 行中提到的命令打开相机 2- 从渲染类实例化一个对象,并使用 setContentView() 将此对象添加到表面视图
但在这种情况下,相机会打开几秒钟然后消失,然后,出现 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初学者提供良好教程的条款相机和AndR“增强现实”或为Android相机和AndR“增强现实”的初学者推荐好书将不胜感激。