0

我正在尝试为启动器模拟一个底座,其中 3 个文本视图在所述底座上均匀分布...由于某种原因,我无法让我的文本视图与父线性布局中的中心对齐,有人可以解释一下吗我这里有什么问题?

这是我在 XML 中的布局:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/main_frame"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:background="#FFFFFF" >

    <LinearLayout
        android:id="@+id/footer"
        android:orientation="horizontal"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:background="#99000000"
        android:paddingBottom="20dp"
        android:paddingTop="20dp" >

        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1" >

             <TextView
                 android:layout_width="100dp"
                 android:layout_height="100dp"
                 android:layout_gravity="center_horizontal"
                 android:background="@drawable/launcher_footer_icon"
                 android:gravity="center"
                 android:text="Internet Browser"
                 android:textColor="#000000"
                 android:textSize="20sp" />

        </LinearLayout>

        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1" >

            <TextView
                android:layout_width="100dp"
                android:layout_height="100dp"
                android:layout_gravity="center_horizontal"
                android:background="@drawable/launcher_footer_icon"
                android:gravity="center"
                android:text="Flight Tracker"
                android:textColor="#000000"
                android:textSize="20sp" />

        </LinearLayout>

        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1">

            <TextView
                android:layout_width="100dp"
                android:layout_height="100dp"
                android:layout_gravity="center_horizontal"
                android:background="@drawable/launcher_footer_icon"
                android:gravity="center"
                android:text="Airline Info"
                android:textColor="#000000"
                android:textSize="20sp" />

        </LinearLayout>

    </LinearLayout>

</RelativeLayout>
4

1 回答 1

1

试试这个,我认为你有太多的内部布局..你可以使用 layout_weight 来实现这一点。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/main_frame"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#FFFFFF"
    android:orientation="vertical" >

    <LinearLayout
        android:id="@+id/footer"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:background="@color/blue"
        android:orientation="horizontal"
        android:padding="20dp"
        android:weightSum="15.0" >

        <RelativeLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="5.0" >

            <TextView
                android:layout_width="100dp"
                android:layout_height="100dp"
                android:layout_centerHorizontal="true"
                android:background="@color/blue"
                android:gravity="center"
                android:text="Internet Browser"
                android:textColor="#000000"
                android:textSize="20sp" />
        </RelativeLayout>

        <RelativeLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="5.0" >

            <TextView
                android:layout_width="100dp"
                android:layout_height="100dp"
                android:layout_centerHorizontal="true"
                android:background="@color/blue"
                android:gravity="center"
                android:text="Flight Tracker"
                android:textColor="#000000"
                android:textSize="20sp" />
        </RelativeLayout>

        <RelativeLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="5.0" >

            <TextView
                android:layout_width="100dp"
                android:layout_height="100dp"
                android:layout_centerHorizontal="true"
                android:background="@color/blue"
                android:gravity="center"
                android:text="Airline Info"
                android:textColor="#000000"
                android:textSize="20sp" />
        </RelativeLayout>
    </LinearLayout>

</RelativeLayout>
于 2013-11-13T21:32:02.803 回答