LayoutManager for RecyclerView根据项目宽度

时间:2016-02-06 11:11:50

标签: android android-layout

我正在尝试构建一个涉及RecyclerView或GridView的UI,我想根据我动态填充的项目的数量和宽度自动设置列数。

这是我迄今为止取得的成就......

my current UI

这是我想要实现的目标......

my target UI

我的项目布局xml

<TextView
        android:layout_width="wrap_content"
        android:layout_height="40dp"
        android:background="@drawable/hollow_white_background"
        android:id="@+id/foodItemName"
        android:text="PIZZA"
        android:gravity="center"
        android:textColor="@color/colorGray300"
        android:textStyle="bold"
        android:textSize="15sp"
        android:paddingLeft="10dp"
        android:paddingRight="10dp" />

请帮助!

2 个答案:

答案 0 :(得分:0)

在你的xml文件中,为你的GridView添加android:numColumns =“auto_fit”和android:stretchmode =“columnWidth”属性。第一个属性根据屏幕大小决定应该有多少列,第二个属性决定如何处理剩余的额外空间,在这种情况下会增加列宽。

答案 1 :(得分:0)

尝试使用StaggeredGridLayoutManager作为RecyclerView的LayoutManager,width item_layout.xml