文本的中心引力 属性 在 android 按钮中不起作用

Center gravity property for text doesn't work in android button

我的布局中有两个 button TableLayout,但文本不在中心,我尝试使用 android:gravity="center" 和 android android:layout_gravity="center",但似乎不起作用。

我该如何解决这个问题?提前致谢

<RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginRight="20dp"
        android:id="@+id/bawah"
        android:layout_margin="10dp"
        android:layout_alignParentBottom="true"

        >
        <TableLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
            <TableRow
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:weightSum="10">
                <Button
                    android:layout_width="0dip"
                    android:layout_height="wrap_content"
                    android:text="Approve"
                    android:textColor="@color/putih"
                    android:textAlignment="center"
                    android:layout_gravity="center"
                    android:gravity="center"
                    android:layout_weight="4.9"
                    android:id="@+id/approve"
                    android:background="@drawable/backhijau"

                    />
                <TextView android:layout_height="wrap_content"
                    android:layout_width="0dip"
                    android:layout_weight="0.2"/>
        <Button
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight="4.9"
            android:textAlignment="center"
            android:text="Tolak"
            android:layout_gravity="center"
            android:gravity="center"
            android:textColor="@color/putih"
            android:id="@+id/tolak"
            android:background="@drawable/backmerah"
            />


            </TableRow>
        </TableLayout>
    </RelativeLayout>

复制并粘贴这段代码让我知道

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/bawah"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_margin="10dp"
    android:layout_marginRight="20dp">

        <TableRow
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:weightSum="10">

            <Button
                android:id="@+id/approve"
                android:layout_width="0dip"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_weight="4.9"
                android:background="@color/colorAccent"
                android:gravity="center"
                android:text="Approve"
                android:textAlignment="center"
                android:textColor="@color/colorPrimary"

                />

            <TextView
                android:layout_width="0dip"
                android:layout_height="wrap_content"
                android:layout_weight="0.2" />

            <Button
                android:id="@+id/tolak"
                android:layout_width="0dip"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_weight="4.9"
                android:background="@color/colorPrimary"
                android:gravity="center"
                android:text="Tolak"
                android:textAlignment="center"
                android:textColor="@android:color/white" />

        </TableRow>


</RelativeLayout>

输出

不需要TableLayout,只需使用RelativeLayoutandroid:layout_below 属性,你就会得到你想要的结果。也没有必要实施 weightSum 属性.

<RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginRight="20dp"
        android:id="@+id/bawah"
        android:layout_margin="10dp">
                <Button
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:text="Approve"
                    android:textColor="@color/putih"
                    android:textAlignment="center"
                    android:id="@+id/approve"
                    android:background="@drawable/backhijau"

                    />
                <Button
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:textAlignment="center"
                    android:text="Tolak"
                    android:layout_below="@+id/approve"
                    android:textColor="@color/putih"
                    android:id="@+id/tolak"
                    android:background="@drawable/backmerah"
                    />

    </RelativeLayout>