Android RadioGroup. Принудительные кнопки в одном столбце?
Я хочу RadioGroup
с различными RadioButtons
отображается в двух столбцах. Но похоже что RadioGroup
заставляет RadioButtons
отображаться только в одном столбце. Есть ли способ, чтобы кнопки отображались в двух столбцах?
Например, этот код XML поместит четыре кнопки в square form
, но внутри RadioGroup они все в one column
,
<RadioGroup
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<RadioButton
android:id="@+id/radio1"
android:text="Button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<RadioButton
android:id="@+id/radio2"
android:text="Button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="42dp"
android:layout_marginEnd="42dp"
android:layout_alignBottom="@+id/radio1"/>
<RadioButton
android:id="@+id/radio3"
android:text="Button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/radio1"
android:layout_alignLeft="@+id/radio1"
android:layout_alignStart="@+id/radio1"
android:layout_marginTop="34dp"/>
<RadioButton
android:id="@+id/radio4"
android:text="Button4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/radio3"
android:layout_alignLeft="@+id/radio2"
android:layout_alignStart="@+id/radio2"/>
</RadioGroup>
1 ответ
Решение
Невозможно отобразить переключатели в нескольких столбцах с помощью группы "Радио". Однако это может быть сделано иначе, как показано ниже.
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<RadioButton
android:id="@+id/radio1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button1" />
<RadioButton
android:id="@+id/radio2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="42dp"
android:layout_marginRight="42dp"
android:text="Button2" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<RadioButton
android:id="@+id/radio3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button3" />
<RadioButton
android:id="@+id/radio4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button4" />
</LinearLayout>
</LinearLayout>
установите View.onClickListener для всех переключателей и настройте статус проверки / снятия флажка в вашем коде.