GridLayout - 基于单元格宽度的高度

时间:2018-05-08 20:18:26

标签: java android android-gridlayout

我正在尝试将网格项的单元格高度设置为与宽度相同。

到目前为止,我已设法水平填充屏幕,每个单元占用相同的空间。我也使用ConstraintLayout来适应不同的屏幕尺寸。

随着屏幕尺寸的变化,我试图将高度与宽度相匹配。

有没有办法在xml中执行此操作?这是我到目前为止所拥有的......

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".UploadActivity">

    <android.support.v7.widget.GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:grid="http://schemas.android.com/apk/res-auto"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        app:alignmentMode="alignBounds"
        app:columnCount="3"
        app:orientation="horizontal"
        app:rowCount="2"
        grid:layout_constraintEnd_toEndOf="parent"
        grid:layout_constraintStart_toStartOf="parent"
        grid:layout_constraintTop_toTopOf="parent">

        <ImageView
            android:id="@+id/imageView7"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            app:layout_columnWeight="1"
            app:layout_gravity="fill"
            grid:srcCompat="@drawable/ic_love_heart_svg" />

        <ImageView
            android:id="@+id/imageView6"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            app:layout_columnWeight="1"
            app:layout_gravity="fill"
            grid:srcCompat="@drawable/ic_love_heart_svg" />

        <ImageView
            android:id="@+id/imageView5"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            app:layout_columnWeight="1"
            app:layout_gravity="fill"
            grid:srcCompat="@drawable/ic_love_heart_svg" />

        <ImageView
            android:id="@+id/imageView4"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            app:layout_columnWeight="1"
            app:layout_gravity="fill"
            grid:srcCompat="@drawable/ic_love_heart_svg" />

        <ImageView
            android:id="@+id/imageView3"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            app:layout_columnWeight="1"
            app:layout_gravity="fill"
            grid:srcCompat="@drawable/ic_love_heart_svg" />

        <ImageView
            android:id="@+id/imageView2"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            app:layout_columnWeight="1"
            app:layout_gravity="fill"
            grid:srcCompat="@drawable/ic_love_heart_svg" />
    </android.support.v7.widget.GridLayout>

    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Button"
        tools:layout_editor_absoluteX="41dp"
        tools:layout_editor_absoluteY="282dp" />

    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Button"
        tools:layout_editor_absoluteX="181dp"
        tools:layout_editor_absoluteY="282dp" />
</android.support.constraint.ConstraintLayout>

0 个答案:

没有答案