在 BrowseFragment 中禁用行缩放/扩展

Disable row scaling / expand in BrowseFragment

我没有找到任何文档如何在将焦点从 Headers 切换到 BrowseFragment 中的片段时禁用行缩放。

Leanback 版本 24.2.0

BrowseFragment 有一个函数 enableMainFragmentScaling 可以部分解决问题。图片现在具有完整尺寸,但标题仍未像在 PlayStore 应用程序、Youtube 应用程序中那样展开。聚焦一行时展开(无动画)。

到目前为止我做了什么:

该代码与演示 leanback 项目非常相似。但是他们在那里启用了行缩放。 Demo on Github

我可以通过在 RowsFragment.

中调用 setExpand(true) 作为 onCreateView() 的第一行来实现这种效果

如果您想永远锁定此效果,可以在 RowsFragment 中覆盖 setExpand(...),然后调用 super.setExpand(true)。不过,我相信您仍然需要在 onCreateView() 中进行初次通话。

你应该打电话给

enableRowScaling(false);

关于你的MainFragment.javaclass

onActivityCreated()方法

在您的 BrowseSupportFragment.MainFragmentAdapterProvider 实现中,尝试在返回片段适配器之前禁用缩放。

    override fun getMainFragmentAdapter(): BrowseSupportFragment.MainFragmentAdapter<*> {
        val mainFragmentAdapter = MainFragmentAdapter(this)
        mainFragmentAdapter.isScalingEnabled = false
        return mainFragmentAdapter
    }