0

我需要调整 VideoView 的大小,但它必须比屏幕大。我发现可以通过覆盖 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 上,它只是全屏。

有谁知道为什么会这样,更重要的是,我该如何解决这个问题?我已经发现了几个关于这个的问题,但都没有任何解决方案:(

4

1 回答 1

0

您可以尝试将布局参数设置为 display.getWidth() * 2 或您希望指定的任何乘数,并类似地设置其相对于 display.getHeight() 的高度希望它有所帮助

顺便说一句,如果您正在播放实时视频流,请告诉我。我的有时会卡住

于 2012-07-31T11:38:04.713 回答