Google已发布FlexboxLayout库。现在,我想使用FlexboxLayout来实现GridView效果,因为GridView具有两行和四个列表。如果项目数少于8,则itemview将向左对齐。当我使用FlexboxLayout时,第二行中的项目居中对齐,如何将它们向左对齐?

我对前端知之甚少。

这是代码:

<com.google.android.flexbox.FlexboxLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:background="@android:color/holo_green_light"
    android:layout_width="match_parent"
    android:layout_height="300dp"
    app:flexWrap="wrap"
    app:alignItems="baseline"
    app:alignContent="stretch"
    app:justifyContent="space_around">

    <android.support.v7.widget.AppCompatButton
        android:background="@android:color/holo_red_dark"
        android:layout_width="80dp"
        android:layout_height="80dp"
        app:layout_flexBasisPercent="20%"/>

    <android.support.v7.widget.AppCompatButton
        android:background="@android:color/holo_red_dark"
        android:layout_width="80dp"
        android:layout_height="80dp"
        app:layout_flexBasisPercent="20%"/>

    <android.support.v7.widget.AppCompatButton
        android:background="@android:color/holo_red_dark"
        android:layout_width="80dp"
        android:layout_height="80dp"
        app:layout_flexBasisPercent="20%"/>

    <android.support.v7.widget.AppCompatButton
        android:background="@android:color/holo_red_dark"
        android:layout_width="80dp"
        android:layout_height="80dp"
        app:layout_flexBasisPercent="20%"/>

    <android.support.v7.widget.AppCompatButton
        android:background="@android:color/holo_red_dark"
        android:layout_width="80dp"
        android:layout_height="80dp"
        app:layout_flexBasisPercent="20%"/>

    <android.support.v7.widget.AppCompatButton
        android:background="@android:color/holo_red_dark"
        android:layout_width="80dp"
        android:layout_height="80dp"
        app:layout_flexBasisPercent="20%"/>

    <android.support.v7.widget.AppCompatButton
        android:background="@android:color/holo_red_dark"
        android:layout_width="80dp"
        android:layout_height="80dp"
        app:layout_flexBasisPercent="20%"/>

</com.google.android.flexbox.FlexboxLayout>

最佳答案

更改:

app:alignItems="baseline"
app:alignContent="stretch"
app:justifyContent="space_around"


至:

app:flexWrap="wrap"
app:flexDirection="row"
app:alignItems="center"
app:alignContent="flex_start"
app:justifyContent="flex_start"

关于android - FlexboxLayout实现GridView效果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37524394/

10-12 03:38