如何强制 Leanback 导航到观察者向上/向下导航按钮(Android TV 应用程序)

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

我有一个页面(MPV),其中有 2 个片段。其中一个是顶行 3 个特色视频,下面的片段是不同 REST 端点的多行视图。只有一个导航问题我一辈子都无法解决。

这是布局图片:

从 FeatureRow Fragment(第 3 个框行)“向下”导航时,我希望导航将焦点集中到 ContentRow Fragment(第 6.5 个框行)。

XML 中是否有一个设置可以指定 FeatureRow 为全角,以便 DOWN 指示移至 ContentRow 片段?现在,您必须按向左键才能使其“向下”移动,但向上键可以很好地返回到功能行。

要添加的代码太多,我将提供人们认为对解决此问题有用的任何代码。它基本上只是标准的后仰导航,没有任何自定义导航代码,所以我假设有一个设置可以使其工作。

android android-tv leanback
1个回答
0
投票

解决方案非常愚蠢。

首先,我必须设置一个全局焦点侦听器来监听焦点变化,以了解焦点的去向。

OnGlobalFocusChangeListener()

发现焦点是 rowContainer 而不是一个 item。然后在我的 XML 文件中发现了 home 片段 rowContainer 的这一行:

android:focusable="true"

这使得容器本身成为焦点 - 而不仅仅是其内部的项目。删除该行就可以解决问题。

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