是否有使用 VerticalGrid 而不是 HorizontalGridView 的 ListRowPresenter?
Posted
技术标签:
【中文标题】是否有使用 VerticalGrid 而不是 HorizontalGridView 的 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:
为了在BrowseFragmen
t 中使用演示者,它应该是RowPresenter
的子代。 VerticalGridPresenter
不是,所以您根本不能在浏览片段中使用它。我正在寻找类似ListRowPresenter
的东西,它是使用VerticalGridView
构建的。 (ListRowPresenter
使用 HorizontalGridView
)
【问题讨论】:
你找到解决办法了吗?可以发一下吗? 【参考方案1】:是的,有一个名为VerticalGridPresenter
的演示者就是为此目的而存在的。它有一个方法public void setNumberOfColumns(int numColumns)
来设置列数。如果这不符合您的需求,您可能需要编写一个自定义演示者。
【讨论】:
为了在browsefragment中使用presenter,它应该是RowPresenter的子级。 VerticalGridPresenter 不是,所以您根本不能在浏览片段中使用它。我正在寻找类似ListRowPresenter
的东西,它是使用 VerticalGridView 构建的。 (ListRowPresenter 使用 HorizontalGridView)
没有这样的东西。一行是水平的,所以任何延伸RowPresenter
的东西本质上都是水平的。您正在尝试将一列放入一行。它不是为此而建的。您可能可以通过自己编写自定义RowPresenter
来实现它,但这没有多大意义。另一种方法是创建您自己的BrowseFragment
实现,支持内部RowsFragment
下的网格。或者你可以简单地在你的BrowseFragment
下放一个VerticalGridFragment
。
这可能是有道理的。想象一下browsefragment的最后一行充满了内容。所以最好垂直浏览而不是水平浏览!如果有的话,我正在某处寻求书面解决方案。总之谢谢
@Saleh 你有没有为此找到任何解决方案?我正在寻找一种类似的实现。您的帮助将不胜感激。以上是关于是否有使用 VerticalGrid 而不是 HorizontalGridView 的 ListRowPresenter?的主要内容,如果未能解决你的问题,请参考以下文章
Angular12 - 使用 @HostBinding 或 @HostListener 而不是 `host` 元数据属性
是否有SQL子句来检查是否存在所有多个值而不是使用多个AND?
是否有任何理由使用一个 DataContext 实例,而不是几个?