在SurfaceView中显示CameraPreview和自定义视图

时间:2012-04-26 15:41:08

标签: android android-camera surfaceview android-canvas surfaceholder

我遇到以下问题: 我正在使用SurfaceHolder在SurfaceView上显示CameraPreview,如Camera Dev Guide所述。所以它提到我必须像这样设置我的SurfaceHolder的类型;

// deprecated setting, but required on Android versions prior to 3.0
 mHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
不幸的是,在设置mHolder.lockCanvas()失败之后,我无法再在那个画布上画画了。 是否有可能在一个SurfaceView上绘制PreviewFrames和自己的视图?

如果不是,是否可以渲染两个SurfaceViews,以便Camera将作为背景,第二个SurfaceView将渲染其顶部的任何视图? 实现这一目标的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

是的,我已经做了这个。你可以做的是你可以创建一个相对布局,然后你可以用适当的布局参数添加你的表面视图。然后,您可以使用适当的布局参数在相同的相对布局上添加其他视图。