调整 VideoView 的大小
Posted
技术标签:
【中文标题】调整 VideoView 的大小【英文标题】:Resizing a VideoView 【发布时间】:2012-07-31 11:32:43 【问题描述】:我需要,但它必须比屏幕大。我发现可以通过覆盖 VideoView 的 onMeasure 来实现,如下所示:
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec)
setMeasuredDimension(twotimesscreenwidth, twotimesscreenheight);
在大多数情况下,这非常有效。我在一系列设备(Nexus One、HTC Wildfire、HTC Sensation、三星 Galaxy S2、Galaxy Gio、Galaxy Tab 10.1、摩托罗拉 Xoom)上对其进行了测试,没有出现任何问题。但是在 HTC Desire HD 或 Nexus S 上测试它时,我注意到它并没有像它必须的那样调整大小。在 Desire HD 上,它会根据屏幕宽度调整大小,并比屏幕高度稍大一点,而在 Nexus S 上,它只是全屏。
有谁知道为什么会这样,更重要的是,我该如何解决这个问题?我已经发现了几个关于这个的问题,但都没有任何解决方案:(
【问题讨论】:
你能提供完整的源代码吗....对我有很大的帮助 【参考方案1】:您可以尝试将布局参数设置为 display.getWidth() * 2 或您希望指定的任何乘数,并类似地设置其相对于 display.getHeight() 的高度 希望对你有帮助
顺便说一句,如果您正在播放实时视频流,请告诉我。我的有时会卡住
【讨论】:
视图的宽高都可以。 VideoView 位于相对布局内,其宽度和高度是屏幕大小的 2 倍,而视频具有 match_parent 大小。当我设置背景图像时,我看到视图的尺寸是正确的。只有视频不会调整大小。另外我正在处理下载的视频文件,所以没有直播,抱歉以上是关于调整 VideoView 的大小的主要内容,如果未能解决你的问题,请参考以下文章
RecyclerView 中的 VideoView 大小错误