我有一个正在使用DetailsOverviewRow和FullWidthDetailsOverviewRowPresenter的详细信息 fragment 。页面首次加载时,将选择操作按钮。当我按下一次时,焦点离开按钮,其他都没有发生。当我第二次按下时,焦点移到页面下方的ListRow。我试图弄清为什么概述或演示者部分中的正文没有重点关注。

android - Leanback.DetailsFragment无法按预期滚动-LMLPHP

android - Leanback.DetailsFragment无法按预期滚动-LMLPHP

在两个屏幕快照之间应该没有第二个“状态”,可以浏览概述/正文?

可能值得注意。在 Activity xml中未声明DetailsFragment,我正在使用FragmentTransactions手动更改 fragment 。同样,使用静态创建方法实例化Fragment(以下来源)。

提前致谢。

Activity xml

DetailsFragment java

最佳答案

我没有特别尝试过该示例,但是从我花在Leanback支持库上的时间里,我了解到即使确实提供了很多有用的东西,但很多都没有:D

所以我会尝试这些事情:

1)确保您想要看到的区域中的物体可聚焦。 (可点击元素默认情况下应该是可聚焦的,但是最好也进行检查)我的意思是,在屏幕截图中,该区域只有文本,没有按钮或可编辑的内容。因此,当您按下时,没有什么可聚焦的。如果使TextView主体可聚焦会发生什么?
(是的,人们希望支持库能够解决这一问题,但事实并非如此。)

2)找出按下时真正聚焦的东西,因为正如您所说,聚焦离开了按钮-但是它会去哪里呢? (How to find out which view is focused?)您可能在某个地方遇到“方向问题”。也就是说-焦点基于 View 层次结构树而不是基于我们在屏幕上看到的内容进行传播。在某些情况下,可以通过将焦点移过 View 树的意外部分来跳过某些元素或卡在某处,这对于算法是有意义的,但从人类的角度来看是不合逻辑的。

关于android - Leanback.DetailsFragment无法按预期滚动,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39322391/

10-09 05:30