1

我需要添加View我之前TextureView使用的播放视频,这VideoView完全没问题,但我的动画有问题,所以我把它改成了TextureView现在我不能放任何View东西!似乎Textureview将涵盖所有视图这是我的 xml 布局:

  <FrameLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/frmview"
    >

    <com.my.app.TextureVideoView
        android:id="@+id/vv_play"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:alpha="0.0" />

    <ImageView
        android:id="@+id/iv_play"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:srcCompat="@drawable/app_ic" />
</FrameLayout>

我怎样才能把正在播放的视频View放在上面?TextureView

4

3 回答 3

2

最后我不得不FrameLayout在初始化TextureView和播放视频后以编程方式将它添加到我的!

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_splash);

    mPreview = (TextureView) findViewById(R.id.vv_play);
    mPreview.setSurfaceTextureListener(this);
    FrameLayout frameLayout = (FrameLayout) findViewById(R.id.frmview);

    ImageView img = new ImageView(this);
    img.setImageResource(R.drawable.app_ic);
    frameLayout.addView(img);
}
于 2016-07-12T22:19:47.780 回答
0

也许你可以试试TextureView的这个api:

TextureView.setOpaque(false);

于 2016-07-22T11:36:54.330 回答
0

TextureView不断更新其内容(例如播放视频)将始终透支View放置在其顶部的任何内容(例如,以及放置在容器内的TextureView其他一些内容)。ViewFrameLayout

我发现处理这个问题的最佳解决方案是将顶部显示View在另一个Window位于Window包含的顶部的内部TextureView,例如PopupWindow可以用于此。

于 2021-02-11T14:46:12.633 回答