0

我试图弄清楚如何在屏幕上以 2X3 的形式排列 6 个图像,所有图像都必须是正方形且大小相同,并且它们周围的边距很小。这是我到目前为止所拥有的,这给了我这个:

如您所见,底部图像被压扁

来自布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" 
    android:weightSum="3">

    <!-- Top Row -->
    <LinearLayout
        android:baselineAligned="false"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        <RelativeLayout
            android:id="@+id/relative_1"
            android:layout_weight="1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="6dp"
            android:layout_marginRight="3dp"
            android:layout_marginTop="6dp"
            android:layout_marginBottom="3dp">
            <ImageView 
                android:id="@+id/img_head"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:contentDescription="@string/text_head"
                android:src="@drawable/headlines"
                android:clickable="true"
                />
            <TextView 
                android:id="@+id/text_head"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_alignTop="@id/img_head"
                android:layout_alignLeft="@id/img_head"
                android:layout_alignRight="@id/img_head"
                android:layout_margin="1dp"
                android:gravity="center"
                android:text="@string/text_head"
                />
        </RelativeLayout>
        <RelativeLayout
            android:id="@+id/relative_2"
            android:layout_weight="1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="3dp"
            android:layout_marginRight="6dp"
            android:layout_marginTop="6dp"
            android:layout_marginBottom="3dp">
            <ImageView 
                android:id="@+id/img_custom1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:contentDescription="@string/text_custom1"
                android:src="@drawable/headlines"
                android:clickable="true"
                />
            <TextView 
                android:id="@+id/text_custom1"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_alignTop="@id/img_custom1"
                android:layout_alignLeft="@id/img_custom1"
                android:layout_alignRight="@id/img_custom1"
                android:layout_margin="1dp"
                android:gravity="center"
                android:text="@string/text_custom1"
                />
        </RelativeLayout>
    </LinearLayout>


     <!-- Second Row -->
    <LinearLayout
        android:baselineAligned="false"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        <RelativeLayout
            android:id="@+id/relative_3"
            android:layout_weight="1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="6dp"
            android:layout_marginRight="3dp"
            android:layout_marginTop="3dp"
            android:layout_marginBottom="3dp">
            <ImageView 
                android:id="@+id/img_custom2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:contentDescription="@string/text_custom2"
                android:src="@drawable/headlines"
                android:clickable="true"
                />
            <TextView 
                android:id="@+id/text_custom2"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_alignTop="@id/img_custom2"
                android:layout_alignLeft="@id/img_custom2"
                android:layout_alignRight="@id/img_custom2"
                android:layout_margin="1dp"
                android:gravity="center"
                android:text="@string/text_custom2"
                />
        </RelativeLayout>
        <RelativeLayout
            android:id="@+id/relative_4"
            android:layout_weight="1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="3dp"
            android:layout_marginRight="6dp"
            android:layout_marginTop="3dp"
            android:layout_marginBottom="3dp">
            <ImageView 
                android:id="@+id/img_custom3"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:contentDescription="@string/text_custom3"
                android:src="@drawable/headlines"
                android:clickable="true"
                />
            <TextView 
                android:id="@+id/text_custom3"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_alignTop="@id/img_custom3"
                android:layout_alignLeft="@id/img_custom3"
                android:layout_alignRight="@id/img_custom3"
                android:layout_margin="1dp"
                android:gravity="center"
                android:text="@string/text_custom3"
                />
        </RelativeLayout>
    </LinearLayout>


    <!-- Third Row -->
    <LinearLayout
        android:baselineAligned="false"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        <RelativeLayout
            android:id="@+id/relative_5"
            android:layout_weight="1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="6dp"
            android:layout_marginRight="3dp"
            android:layout_marginTop="3dp"
            android:layout_marginBottom="6dp">
            <ImageView 
                android:id="@+id/img_custom4"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:contentDescription="@string/text_custom4"
                android:src="@drawable/headlines"
                android:clickable="true"
                />
            <TextView 
                android:id="@+id/text_custom4"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_alignTop="@id/img_custom4"
                android:layout_alignLeft="@id/img_custom4"
                android:layout_alignRight="@id/img_custom4"
                android:layout_margin="1dp"
                android:gravity="center"
                android:text="@string/text_custom4"
                />
        </RelativeLayout>
        <RelativeLayout
            android:id="@+id/relative_6"
            android:layout_weight="1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="3dp"
            android:layout_marginRight="6dp"
            android:layout_marginTop="3dp"
            android:layout_marginBottom="6dp">
            <ImageView 
                android:id="@+id/img_custom5"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:contentDescription="@string/text_custom5"
                android:src="@drawable/headlines"
                android:clickable="true"
                />
            <TextView 
                android:id="@+id/text_custom5"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_alignTop="@id/img_custom5"
                android:layout_alignLeft="@id/img_custom5"
                android:layout_alignRight="@id/img_custom5"
                android:layout_margin="1dp"
                android:gravity="center"
                android:text="@string/text_custom5"
                />
        </RelativeLayout>
    </LinearLayout>
</LinearLayout>

如您所见,底部图像被压扁,我尝试在线性布局上使用 android:weight ,但据说我不能使用它。我需要改变什么?

4

1 回答 1

1

使用GridView. 它允许您将子视图排列成具有高度可定制性的任意网格排列。

于 2013-08-20T17:21:01.577 回答