小型SurfaceView上的摄像头预览不显示整个摄像头输出

时间:2013-07-15 15:42:34

标签: android

我的应用正在显示我的某项活动的相机预览。我想展示相机预览,但不是全屏,只是在一个小盒子里面。

现在的问题是,我从相机获得的图像比我想要的要小。例如,当我打开它时,我只能看到我的眼睛和鼻子,但我希望看到我的整个脸。

就像我的surfeceView就像一个房子里的窗户,只允许我看到外面的部分景色。我的想法是,在surfaceView(不占用整个屏幕空间)中,我得到整个相机输出,但调整大小以适应surfaceView。

这是相机预览尺寸的问题吗?或者我应该以某种方式调整相机输出的大小?

提前致谢

1 个答案:

答案 0 :(得分:0)

您应该为我们提供一些代码来查找问题,至少是layout.xml文件以及使用SurfaceViewSurfaceHolder.Callbacks的类。现在,如果不这样做,可以尝试以下方法。

onSurfaceChanged方法中,使用两个int参数width和height来计算预览的最佳大小。您可以使用setPreviewSizegetSupportedPreviewSize执行此操作。

如果您无法轻松解决问题,您还可以尝试使用ImageViewTextureView并在其上绘制您从{{1}获得的图像回调。