因此,我要尝试的是采用交错布局,但是列表中的第一项需要跨越两列。前两行也是固定高度。除了第一个项目跨越两列之外,我所有的工作都在进行。

我正在将RecyclerView.Adapter与StaggeredGridLayoutManager一起使用。似乎不是开箱即用的功能。我假设我可以创建一个自定义布局管理器,但我不确定该从哪里开始。我尝试搜索,但找不到任何有关如何使项目跨越多列的信息。

下图是我在列表中寻找的内容。

最佳答案

当前,StaggeredGridLayoutManager仅支持跨越所有列的 View (对于垂直配置的布局),而不支持任意数量的 View 。

如果您仍然希望将它们跨越所有列,则应在适配器实现中执行此操作:

public final void onBindViewHolder(RecyclerView.ViewHolder viewHolder, int position) {

    StaggeredGridLayoutManager.LayoutParams layoutParams = (StaggeredGridLayoutManager.LayoutParams) viewHolder.itemView.getLayoutParams();
    layoutParams.setFullSpan(true);
}

恕我直言,StaggeredGridLayoutManager仍在大量开发中,Google希望我们将其用于反馈:(

关于android - 使用RecyclerView跨越多列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27427656/

10-11 14:26