RecyclerView 水平多行LinearLayoutManager

问题描述 投票:0回答:1

我想制作一个布局管理器,以标签云的表示方式来表示其项目,如下图所示。

enter image description here

有一些库可以做到这一点,但我只想学习如何使用 RecyclerView 及其 LayoutManager 模式来做到这一点。 StaggeredGridLayoutManager 无法选择,因为您必须像 GridLayoutManager 一样指定列数,在这种特殊情况下我需要的是使某些行包含 2 个项目,一些包含 1 个元素,一些包含 3 个或更多元素。我正在考虑使用具有水平方向的 LinearLayoutManager,但我需要使其破坏当前行中没有更多空间的元素(位于新行中),而不是使其水平滚动。但我不知道该怎么做。任何人都可以至少指导我了解解决方案的基础知识吗?

谢谢。

java android mobile android-recyclerview
1个回答
0
投票

//依赖

    implementation("com.google.android.flexbox:flexbox:3.0.0")

// 设置 FlexboxLayoutManager

    val layoutManager = FlexboxLayoutManager(this)
    layoutManager.flexDirection = FlexDirection.ROW
    layoutManager.justifyContent = JustifyContent.FLEX_START
    recyclerView.layoutManager = layoutManager
© www.soinside.com 2019 - 2024. All rights reserved.