ANDROID - 如何在 RelativeLayout 中将多个按钮水平居中?

ANDROID - How can I center horizontally multiple Buttons in RelativeLayout?

ANDROID - 我们可以在 RelativeLayout 中将多个 Button 水平居中吗?

问。如何删除此空白 space 并在相对布局的中心添加所有 4 个按钮,就像我们在线性布局权重中使用的那样,将水平 space.

中的所有 btns 均等

I want to make all 4 buttons in center without any container.

PLEASE! See this Problem IMAGE

CODE

    <RelativeLayout
            android:id="@+id/sub_main_dashboard"
            android:layout_width="fill_parent"
            android:layout_height="match_parent"
            android:layout_gravity="center_horizontal"
            android:background="@color/white"
            android:gravity="center_horizontal" >

<ToggleButton
                android:id="@+id/toggle1"
                android:layout_width="65dp"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_below="@+id/program_outline"
                android:layout_gravity="start"
                android:layout_margin="10dp"
                android:background="@drawable/phase1_toggle_button"
                android:focusable="false"
                android:focusableInTouchMode="false"
                android:gravity="bottom|center_horizontal"
                android:paddingBottom="2dp"
                android:paddingLeft="10dp"
                android:paddingRight="10dp"
                android:textAlignment="textEnd"
                android:textAllCaps="true"
                android:textColor="@color/white"
                android:textOff=""
                android:textOn=""
                android:textStyle="bold" />

<ToggleButton
                android:id="@+id/toggle2"
                android:layout_width="65dp"
                android:layout_height="wrap_content"
                android:layout_below="@+id/program_outline"
                android:layout_gravity="start"
                android:layout_margin="10dp"
                android:layout_toRightOf="@+id/toggle1"
                android:background="@drawable/phase2_toggle_button"
                android:focusable="false"
                android:focusableInTouchMode="false"
                android:gravity="bottom|center_horizontal"
                android:paddingBottom="2dp"
                android:paddingLeft="10dp"
                android:paddingRight="10dp"
                android:textAlignment="center"
                android:textAllCaps="true"
                android:textColor="@color/white"
                android:textOff=""
                android:textOn=""
                android:textStyle="bold" />

<ToggleButton
                android:id="@+id/toggle3"
                android:layout_width="65dp"
                android:layout_height="wrap_content"
                android:layout_below="@+id/program_outline"
                android:layout_gravity="start"
                android:layout_margin="10dp"
                android:layout_toLeftOf="@+id/toggle4"
                android:background="@drawable/phase3_toggle_button"
                android:focusable="false"
                android:focusableInTouchMode="false"
                android:gravity="bottom|center_horizontal"
                android:paddingBottom="2dp"
                android:paddingLeft="10dp"
                android:paddingRight="10dp"
                android:textAlignment="center"
                android:textAllCaps="true"
                android:textColor="@color/white"
                android:textOff=""
                android:textOn=""
                android:textStyle="bold" />

<ToggleButton
                android:id="@+id/toggle4"
                android:layout_width="65dp"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_below="@+id/program_outline"
                android:layout_margin="10dp"
                android:background="@drawable/phase4_toggle_button"
                android:focusable="false"
                android:focusableInTouchMode="false"
                android:gravity="bottom|center_horizontal"
                android:paddingBottom="2dp"
                android:paddingLeft="10dp"
                android:paddingRight="10dp"
                android:textAlignment="center"
                android:textAllCaps="true"
                android:textColor="@color/white"
                android:textOff=""
                android:textOn=""
                android:textStyle="bold" />

I want to make all 4 buttons in center without any container.

@Abhishek Patel Updated image is Here

试试这个

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/sub_main_dashboard"
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:layout_gravity="center_horizontal"
android:gravity="center_horizontal" >

<ToggleButton
    android:id="@+id/toggle1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_gravity="start"
    android:layout_margin="10dp"
    android:focusable="false"
    android:focusableInTouchMode="false"
    android:gravity="bottom|center_horizontal"
    android:paddingBottom="2dp"
    android:paddingLeft="10dp"
    android:paddingRight="10dp"
    android:textAlignment="textEnd"
    android:textAllCaps="true"
    android:textOff=""
    android:textOn=""
    android:textStyle="bold" />

<ToggleButton
    android:id="@+id/toggle2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="start"
    android:layout_margin="10dp"
    android:layout_toRightOf="@+id/toggle1"
    android:focusable="false"
    android:focusableInTouchMode="false"
    android:gravity="bottom|center_horizontal"
    android:paddingBottom="2dp"
    android:paddingLeft="10dp"
    android:paddingRight="10dp"
    android:textAlignment="center"
    android:textAllCaps="true"
    android:textOff=""
    android:textOn=""
    android:textStyle="bold" />

<ToggleButton
    android:id="@+id/toggle3"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="start"
    android:layout_margin="10dp"
    android:layout_toRightOf="@+id/toggle2"
    android:focusable="false"
    android:focusableInTouchMode="false"
    android:gravity="bottom|center_horizontal"
    android:paddingBottom="2dp"
    android:paddingLeft="10dp"
    android:paddingRight="10dp"
    android:textAlignment="center"
    android:textAllCaps="true"
    android:textOff=""
    android:textOn=""
    android:textStyle="bold" />

<ToggleButton
    android:id="@+id/toggle4"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_toRightOf="@+id/toggle3"
    android:layout_margin="10dp"
    android:focusable="false"
    android:focusableInTouchMode="false"
    android:gravity="bottom|center_horizontal"
    android:paddingBottom="2dp"
    android:paddingLeft="10dp"
    android:paddingRight="10dp"
    android:textAlignment="center"
    android:textAllCaps="true"
    android:textOff=""
    android:textOn=""
    android:textStyle="bold" />

将这些按钮包装在 ex.LinearLayout 的布局中并应用 centerInParent="true"

例如:

<RelativeLayout
            android:id="@+id/sub_main_dashboard"
            android:layout_width="fill_parent"
            android:layout_height="match_parent"
            android:layout_gravity="center_horizontal"
            android:background="@color/white"
            android:gravity="center_horizontal" >

<LinearLayout
android:centerInParent="true"
android:orientation="horizontal"
...>

<ToggleButton .. />
<ToggleButton .. />
<ToggleButton .. />
<ToggleButton .. />

</LinearLayout>

</RelativeLayout>