【问题标题】:How add view over TextureView如何在 TextureView 上添加视图
【发布时间】:2016-07-12 21:24:16
【问题描述】:

我需要在我的 TextureView 上添加 View 以在其中播放视频 我以前用过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 上?

【问题讨论】:

    标签: android android-layout android-videoview textureview android-textureview


    【解决方案1】:

    最后,在初始化TextureView 并播放视频后,我必须以编程方式将其添加到我的FrameLayout

    @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);
    }
    

    【讨论】:

      【解决方案2】:

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

      TextureView.setOpaque(false);

      【讨论】:

        【解决方案3】:

        TextureView 不断更新其内容(例如播放视频)将始终透支任何放在其顶部的 View 内容(例如 TextureView 和一些其他 View 放在 FrameLayout 容器中) .

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

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2012-05-30
          • 2015-01-29
          • 1970-01-01
          • 2011-01-07
          • 2012-03-30
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多