Android SurfaceView 调整大小以适应屏幕 16 :9

标签 android resize surfaceview

您好! 有没有一种好方法可以让 16:9 的 SurfaceView 变大,直到它触及屏幕边缘? (因此 SurfaceView 处于最大尺寸且仍为 16:9 且不在屏幕外)

我听说它叫信箱,但没有找到任何教程。

谢谢

最佳答案

有两个相关的大小,Surface 的大小和 View 的大小。

Surface 的大小由呈现给它的视频的大小决定。你无法改变这一点。 720p 视频会将尺寸设置为 1280x720。

View的大小由布局代码决定。这可以在您的应用中设置。

系统合成器 (SurfaceFlinger) 将缩放 Surface 的内容,使其适合 View。为避免失真,您希望保持相同的纵横比。您使用自定义 FrameLayout 执行此操作.

举个例子,看看如何AspectFrameLayout用于 Grafika 的视频播放器,例如this chunk of code .

关于Android SurfaceView 调整大小以适应屏幕 16 :9,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26125744/

相关文章:

html - ASP.NET div 标签适合

android - 色带仅适用于 Android 4.0+

Android - 扭曲的相机预览

android - 如何在 Android 中动态设置 View 的位置?

php - Android 使用 PHP 连接 MYSQL

java - Pane 未调整到其转换后的尺寸

android - 视频未在视频 View 中播放 - 表面 View

android - 深色背景下难以阅读的推送通知

android - OpenGL:渲染到纹理的尺寸大于屏幕尺寸和glViewport

java - 在 JSplitPane 内调整 JToolbar 大小