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>
我的无线电组在屏幕上左对齐。
如何水平居中单选组。
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>