Android:无法将VideoView背景设置为透明

我有一个VideoView播放形状不是矩形的video(即圆angular圆柱体)。 videoview显示在具有背景色的LinearLayout中。 我希望videoview的背景是透明的,以便使圆柱体在背景颜色的顶部旋转而没有任何黑angular。 这是我得到的: 目前的结果

这就是我想要得到的: 在这里输入图像说明

当然,你可以问,为什么我不把video的背景颜色设置为与容器的背景颜色相匹配,但我想达到这个目的的原因是因为我的下一步是要有一个图像或模式作为容器的背景。 我的布局xml如下:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#00aaff" android:orientation="vertical" > <VideoView android:id="@+id/surface_view" android:layout_width="254dp" android:layout_height="200px" /> </LinearLayout> 

在尝试的时候,我试图为videoview设置一个背景,但是这样做导致完全遮蔽了videoview。

谢谢。

VideoView在当前窗口之上打开一个单独的窗口。 这是因为它基于SurfaceView。 我们不能设置阿尔法或与它执行animation,因为它没有同步你的其他用户界面元素。

所以:你应该使用一个基于TextureView的video播放器,并通过“设置alpha”来为TextureView 设置透明背景 。你可以使用这些库,并获得一个基于TextureView的video播放器