2013-05-04 188 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