2013-05-04 50 views
0

我编码的Android应用程序,它使用SurfaceView类来实现摄像头预览,这在Nexus银河运作良好,Desire HD的Xperia Z全屏相机预览?

表面视图布局宽度/高度属性是match_parent

但我遇到一个问题: 在SONY Xperia Z上,屏幕分辨率为1080p,但最大预览分辨率为1280 * 720

因此,我的相机预览仅占全屏的一部分,其他空白为空。

如何让我的预览全屏?

回答

1

调整您SurfaceView这样在横向模式下:

 // float camera_ratio = preview_size.width * preview_size/height; 
     ViewGroup.LayoutParams params = surfaceView.getLayoutParams(); 
     params.height = surfaceView.getHolder().getSurfaceFrame().height(); 
     params.width = Math.round(camera_ratio * params.height); 
     surfaceView.setLayoutParams(params); 

或切换周围的一些参数,如果你的应用程序是在肖像模式。

编辑:神圣莫里,对不起复活这个半岁的问题!

+0

感谢您的回答,我会稍后再试 – petitchamp 2013-11-20 10:02:33