Android:无线电组的水平居中对齐

Android: Horizontal Center Align for Radio Group

我的无线电组在屏幕上左对齐。
如何水平居中单选组。
TextView 本身正确地水平居中对齐。

....
        <LinearLayout
            android:id="@+id/LinearLayout02"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            >

            <TextView
                android:id="@+id/text1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:gravity="center_horizontal"
                android:text="Test"
                />


        <RadioGroup
            android:id="@+id/radioGroupMode"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" 
            android:layout_gravity="center_horizontal"  
            android:gravity="center_horizontal" >

            <RadioButton
                android:id="@+id/radioTestMode"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:checked="true"
                android:tag="OPTION_1"
                android:text="Option1"
             />

            <RadioButton
                android:id="@+id/radioLearnMode"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:tag="Option_2"
                android:text="Option 2"
             />
        </RadioGroup>

</LinearLayout>
....
<LinearLayout 
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
    android:gravity="center">

        <TextView
            android:id="@+id/text1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:gravity="center_horizontal"
            android:text="Test" />


        <RadioGroup
            android:id="@+id/radioGroupMode"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" 
            android:layout_gravity="center_horizontal"  


      android:gravity="center_horizontal">

            <RadioButton
                android:id="@+id/radioTestMode"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:checked="true"
                android:tag="OPTION_1"
                android:text="Option1"
                />

            <RadioButton
                android:id="@+id/radioLearnMode"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:tag="Option_2"
                android:text="Option 2"
                />
        </RadioGroup>

    </LinearLayout>

问题出在您的 RadioButton 上。请将您的 layout_width 更改为 "wrap_content"

在单选组布局中,您提到布局宽度,如 match_parent,如果您提到父布局,如匹配父布局,则不能使用引力 properly.So,您需要更改宽度,如 wrap_content

<RadioGroup
                android:id="@+id/radioGroupMode"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" 
                android:layout_gravity="center_horizontal"  
                android:gravity="center_horizontal" >

                <RadioButton
                    android:id="@+id/radioTestMode"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:checked="true"
                    android:tag="OPTION_1"
                    android:text="Option1"
                 />

                <RadioButton
                    android:id="@+id/radioLearnMode"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:tag="Option_2"
                    android:text="Option 2"
                 />
            </RadioGroup>

试试这个:

<RadioGroup
                android:id="@+id/account_options_sex"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_marginStart="16dp"
                android:layout_marginTop="8dp"
                android:layout_marginEnd="16dp"
                android:orientation="horizontal"
                android:scrollbarAlwaysDrawHorizontalTrack="false"
                android:scrollbarAlwaysDrawVerticalTrack="true"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintStart_toStartOf="parent"
                android:layout_gravity="center_horizontal"
                android:gravity="center_horizontal"
                app:layout_constraintTop_toBottomOf="@+id/account_title_pf_sex">

            <RadioButton
                    android:id="@+id/radio_female"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content" android:layout_weight="1" android:scaleType="fitStart"
                    android:text="Feminino" />

            <RadioButton
                    android:id="@+id/radio_masculine"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content" android:layout_weight="1" android:scaleType="fitStart"
                    android:text="Masculino" />

            <RadioButton
                    android:id="@+id/radio_unkown"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content" android:layout_weight="1" android:scaleType="fitStart"
                    android:text="Indefinido" />
        </RadioGroup>