是否有使用 VerticalGrid 而不是 Horizo​​ntalGridView 的 ListRowPresenter?

Posted

技术标签:

【中文标题】是否有使用 VerticalGrid 而不是 Horizo​​ntalGridView 的 ListRowPresenter?【英文标题】:Is there a ListRowPresenter which uses VerticalGrid instead of HorizontalGridView? 【发布时间】:2019-08-21 13:58:43 【问题描述】:

如您所知,leanback 库中有一个 ListRowPresenter,它通过 HorizontalGridView 展示其项目。 (查看其源代码here)但是我们可以使用VerticalGrid 的Presenter 吗?

我希望我的BrowseFragment 的最后一行可以垂直滚动(需要多少行和固定的列号!)而不是setNumRows 我会写setNumVolumns ...

leanback 可以吗?


更新 1: 为了在BrowseFragment 中使用演示者,它应该是RowPresenter 的子代。 VerticalGridPresenter 不是,所以您根本不能在浏览片段中使用它。我正在寻找类似ListRowPresenter 的东西,它是使用VerticalGridView 构建的。 (ListRowPresenter 使用 HorizontalGridView

【问题讨论】:

你找到解决办法了吗?可以发一下吗? 【参考方案1】:

是的,有一个名为VerticalGridPresenter 的演示者就是为此目的而存在的。它有一个方法public void setNumberOfColumns(int numColumns) 来设置列数。如果这不符合您的需求,您可能需要编写一个自定义演示者。

【讨论】:

为了在browsefragment中使用presenter,它应该是RowPresenter的子级。 VerticalGridPresenter 不是,所以您根本不能在浏览片段中使用它。我正在寻找类似ListRowPresenter 的东西,它是使用 VerticalGridView 构建的。 (ListRowPresenter 使用 Horizo​​ntalGridView) 没有这样的东西。一行是水平的,所以任何延伸RowPresenter 的东西本质上都是水平的。您正在尝试将一列放入一行。它不是为此而建的。您可能可以通过自己编写自定义RowPresenter 来实现它,但这没有多大意义。另一种方法是创建您自己的BrowseFragment 实现,支持内部RowsFragment 下的网格。或者你可以简单地在你的BrowseFragment 下放一个VerticalGridFragment 这可能是有道理的。想象一下browsefragment的最后一行充满了内容。所以最好垂直浏览而不是水平浏览!如果有的话,我正在某处寻求书面解决方案。总之谢谢 @Saleh 你有没有为此找到任何解决方案?我正在寻找一种类似的实现。您的帮助将不胜感激。

以上是关于是否有使用 VerticalGrid 而不是 Horizo​​ntalGridView 的 ListRowPresenter?的主要内容,如果未能解决你的问题,请参考以下文章

Angular12 - 使用 @HostBinding 或 @HostListener 而不是 `host` 元数据属性

这是常见的优化吗?

是否有SQL子句来检查是否存在所有多个值而不是使用多个AND?

是否有任何理由使用一个 DataContext 实例,而不是几个?

是否有使用 HTML::Template 而不是 TT 的 Catalyst 教程?

是否有任何理由使用 C 而不是 C++ 进行嵌入式开发? [关闭]