Android SurfaceView调整到适合屏幕16:9

问题描述:

您好!是否有16:9 SurfaceView的好方法,然后调整它的大小直到触及屏幕边缘? (所以SurfaceView的尺寸最大,仍然是16:9,而不是在屏幕之外)Android SurfaceView调整到适合屏幕16:9

我听说它被称为信箱,但没有找到关于它的任何教程。

谢谢

有两种相关的尺寸,表面的大小和视图的大小。

Surface的大小由正在呈现给它的视频的大小决定。你不能改变这一点。 720p视频将设置为1280x720。

视图的大小由布局代码决定。这可以从您的应用程序内设置。

系统合成器(SurfaceFlinger)将缩放Surface的内容以使它们适合视图。为了避免失真,您希望保持相同的宽高比。你可以用自定义FrameLayout来做到这一点。

举一个例子,看看如何在Grafika的视频播放器中使用AspectFrameLayout,例如this chunk of code

+0

感谢您的帮助! :d – eliaS 2014-10-01 15:07:22