Leanback传输控件叠加层不可见或位于视频表面后面?

问题描述 投票:0回答:1

[使用Leanback和exoplayer实现firetv应用程序时,我使用了exoplayer提供的LeanbackPlayerAdapter。我还使用了VideoMediaPlayerGlue来扩展PlaybackTransportControlGlue。与此相同:https://github.com/android/tv-samples/blob/master/LeanbackShowcase/app/src/main/java/androidx/leanback/leanbackshowcase/app/media/VideoMediaPlayerGlue.java。以下是我用来初始化所有内容的代码。现在由于某种奇怪的原因,开始播放,并且所有firetv控件都可以在遥控器上工作。但是,控件叠加层无处可见。我想说明的另一点是,当您向下按D-pad时,您可以听到firetv滴答声,因此我有理由相信控件处于活动状态,但位于视频表面后面。例如,如果我在光标位于“喜欢”或“不喜欢”按钮上时单击,它会在屏幕上显示一个“喜欢或不喜欢”的吐司。

    LeanbackPlayerAdapter playerAdapter = new LeanbackPlayerAdapter(context, player, 16);
    playerAdapter.setPlaybackPreparer(this);
    playerAdapter.setControlDispatcher(null);
    playerAdapter.setCallback(null);
    mMediaPlayerGlue = new VideoMediaPlayerGlue((Activity) context, playerAdapter);
    mMediaPlayerGlue.setHost(mGlue);
    mMediaPlayerGlue.setTitle("title");
    mMediaPlayerGlue.setSubtitle("subtitle");

    player.prepare(mediaSource, !haveStartPosition, false);

    playWhenReady(mMediaPlayerGlue);
java android exoplayer leanback amazon-fire-tv
1个回答
0
投票

在我的活动xml视图中,我偶然有exo播放器视图,因此我摆脱了它们。现在的“播放活动”视图如下所示:

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android ="http://schemas.android.com/apk/res/android"
xmlns:app = "http://schemas.android.com/apk/res-auto"
xmlns:tools = "http://schemas.android.com/tools"
android:layout_width = "match_parent"
android:layout_height = "match_parent"
tools:context = "com.example.firetv.PlaybackActivity">

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

© www.soinside.com 2019 - 2024. All rights reserved.