Leanback.DetailsFragment不按预期滚动

我有一个使用DetailsOverviewRow和FullWidthDetailsOverviewRowPresenter的细节片段。 当页面第一次加载时,操作button被选中。 当我按下一次,焦点离开button,没有其他事情发生。 当我再次按下时,焦点移动到页面下方的ListRow。 我试图弄清楚为什么概述,或者是主持人所称的主体部分不重点。

DetailsView初始状态

DetailsView滚动

在概览/正文可读的两个截图之间是否应该没有第二个“状态”?

可能值得注意。 DetailsFragment没有在活动xml中声明,我正在使用FragmentTransactions手动更改片段。 另外,片段使用静态创build方法(源代码如下)实例化。

提前致谢。

活动xml

详细信息片段java

Solutions Collecting From Web of "Leanback.DetailsFragment不按预期滚动"

我没有特别的尝试过这个例子,但是从我在Leanback支持库上花费的时间,我知道尽pipe提供了很多有用的东西,但是很多并不是:D

所以我会尝试这些东西:

1)确保你想要看到的区域中的东西是可以聚焦的。 (可点击的元素应该默认为可重点,但也可以更好地检查)我的意思是,在屏幕截图中,该区域中只有文本,没有button或可编辑的内容。 所以当你按下时,没有什么可以关注的。 如果你把TextView的主体设为可聚焦的,会发生什么? (是的,人们会期望支持库会照顾到这一点,但情况可能并非如此)。

2)当你按下时,找出真正聚焦的焦点,因为正如你所说的那样,焦点离开了button -​​ 但是它在哪里呢? ( 如何找出哪个视图是关注的? )你可能在某个地方有一个“方向问题”。 也就是说,焦点是基于视图层次结构树,而不是基于我们在屏幕上看到的。 在某些情况下,可能会跳过某些元素,或者通过将焦点移动到视图树的意外部分,从而陷入某处,这对于algorithm是有意义的,但从人的angular度来看并不合逻辑。

细节展示者焦点以这种方式工作:1)第一个焦点被给予动作button。 左/右导航button在左右操作button之间切换焦点。

2)从动作行下来导航button将焦点从动作行转移到细节行(单个细节项本身不可聚焦),这是通过将缩略图锚定位置向更南方移动来实现的。

3)从细节行向下按导航button将焦点从细节行移动到相关行。

所以细节行通过改变Thumbnail图像的锚定位置来获得焦点。 从动作行按下时,您的缩略图图像是否会改变其锚定位置?

讨厌回答我自己的问题。 这是因为我没有RTFM。 我在networking请求完成后创build了片段UI。 为了使FullWidthDetailsPresenter正常工作,应该在片段onCreate()方法中初始化ClassPresenterSelector()。