android 如何将 gridlayoutManager 的每一列的宽度设置为 wrapContent 不固定大小

how to set width of each column of gridlayoutManager to wrapContent not fixed size in android

我在 recyclerView 上使用 GridLayoutManager。我想像这张图片一样显示我的列表,但我的输出不同。我想要一个 GridLayoutManager ,每一行都有不同的宽度取决于它的宽度。

   binding.rcyHashtag.apply {
        layoutManager = GridLayoutManager(requireContext(), 3)
        adapter = simpleHashTagAdapter
    }

<LinearLayout
android:id="@+id/lay_root"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:focusable="true"
android:clickable="true"
android:background="@drawable/drw_bg_hashtag"
android:paddingEnd="2dp"
android:paddingStart="2dp"
android:layout_margin="2dp">
<TextView
    android:id="@+id/txt_title"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textColor="@color/white"
    android:layout_gravity="center"
    android:gravity="center"
    android:textSize="12sp"
  />

我找到了解决办法。我只是将 StaggeredGridLayoutManager 用于 recyclerView,如下所示:

 binding.rcyHashtag.apply {
        layoutManager = StaggeredGridLayoutManager( 3,StaggeredGridLayoutManager.HORIZONTAL)
        adapter = simpleHashTagAdapter
    }