我的布局中有一个AppCompatCheckBox。它是这样的:

android - Android AppCompatCheckbox填充/边距/重力-LMLPHP

问题是填充,边距或重力不是我想要的方式。框与左边框之间有一个小间隙。我将重力设置为left / start padding,margin设置为0,但间隙仍然存在。我该如何删除?我希望它完全位于左边框或居中。两者都可以。但是将重心设置为中心也不起作用。

有人有主意吗?

CheckBox和Text应该位于彼此之上。

<LinearLayout
            android:id="@+id/llRoot"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical">

            <LinearLayout
                android:id="@+id/llCbs"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal">

                <android.support.v7.widget.AppCompatCheckBox
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:textColor="?attr/textColor" />

                <android.support.v7.widget.AppCompatCheckBox
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:textColor="?attr/textColor" />

                <android.support.v7.widget.AppCompatCheckBox
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:textColor="?attr/textColor" />
            </LinearLayout>

            <LinearLayout
                android:id="@+id/llTv"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal">

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_weight="1" />

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_weight="1" />

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_weight="1" />
            </LinearLayout>

        </LinearLayout>

最佳答案

您可以简单地通过添加linearlayout并将其重力设置为居中并将AppCompatCheckbox作为其子级来将AppCompatCheckbox设置为居中。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center">

        <android.support.v7.widget.AppCompatCheckBox
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

    </LinearLayout>


</RelativeLayout>

09-17 11:41