【发布时间】:2012-07-28 23:53:14
【问题描述】:
在Android的VideoView中,有没有办法实现和ImageView.ScaleType.CENTER_CROP一样的效果?
也就是说,我希望我的 VideoView 播放视频,使其充满整个屏幕而不会失真。如果视频纵横比与屏幕不完全匹配,则应将其裁剪而不是扭曲。
以下解决方案将填满屏幕,但不保持视频的纵横比: https://stackoverflow.com/a/6927300/1068656
并且此解决方案保持了视频的纵横比,但不会填满整个屏幕(视频被缩放直到较长的一侧碰到屏幕的边缘,从而在侧面引入了条): https://stackoverflow.com/a/4855315/1068656
【问题讨论】:
-
不行,你需要手动设置,你需要用你的表面视图和视频视图做一些数学计算来调整预览大小。
-
如果您的应用仅支持 api 14 及更高版本,您可以使用 TextureView 和这个库 - github.com/dmytrodanylyk/video-crop
-
此解决方案适用于 CENTER_CROP 或 CENTER_INSIDE stackoverflow.com/a/53641686/6082973
标签: android android-layout video android-videoview