2013-06-27 119 views
3

我有一个应用程序,我在一个活动中的工作位置我使用VideoView,同时为该活动设置主题半透明(透明):android:theme =“@ android:style/Theme.Translucent.NoTitleBar.Fullscreen“Android VideoView上的半透明活动

但是我注意到videoView的奇怪行为 - 在视频开始播放(它是自动播放)之前的一秒,videoView本身就是透明的,你可以看到它背后的活动。作为参考,有关的活动还有其他元素,并且视频被构筑。

是否有无论如何使这个黑色,甚至是一个自定义的图像,涵盖了视频开始之前的帧?

videoView.setBackgroundColor是越野车,实际上改变了前景色和继续播放,同时该颜色的边框...

感谢您的时间!

+0

你好@djxstream - 你已经解决了这个问题?谢谢! – MatheusJardimB

回答

0

您可以尽快覆盖ViewView与另一查看,然后作为视频播放开始你可以动画这个查看了,让我们赶紧说改变其alpha为0.0。

+0

我尝试了一些类似的东西之后,它改善它,但仍然明显。感谢您的输入。 – djxstream

7
videoView.setZOrderOnTop(true); 

SurfaceView(和VideoView作为子类)默认放置在窗口后面。所以你应该调用:videoView.setZOrderOnTop(true)如果你想把它放在最前面(使它不透明)。

+0

心灵解释?? –

+0

>控制表面视图的表面是否放置在其窗口的顶部。通常它被放置在窗口后面,允许它(大部分)看起来与层次结构中的视图合成。通过设置它,可以将它放置在窗口上方。这意味着这个SurfaceView窗口的内容都不会在其表面上可见。 >请注意,这必须在表面视图的包含窗口连接到窗口管理器之前设置。 http://developer.android.com/reference/android/view/SurfaceView.html#setZOrderOnTop%28boolean%29 – anonymous

+0

虽然此代码块可能会回答问题,请尝试用相关说明改进您的答案。请参阅http://stackoverflow.com/help/how-to-answer – SMR

0

请阅读this响应其他线程SO,我认为这是对这个问题的解决方案,至少它为我工作