android - studio - Radiobutton con el botón de texto arriba
radiobutton android checked (2)
El @style/TabStyle
es simplemente un estilo que se aplica, puede ignorarlo. El @drawable/main_selector
es un gráfico que se alterna dependiendo de la situación. Puede leer más sobre los selectores aquí .
Ejemplo para obtener texto en la parte superior :
<?xml version="1.0" encoding="utf-8"?>
<RadioGroup xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
<RadioButton
android:text="Text on top"
android:button="@null"
android:background="#f00"
android:layout_weight="1"/>
<RadioButton
android:text="Text on top"
android:button="@null"
android:background="#0f0"
android:layout_weight="1"/>
</RadioGroup>
Dará el siguiente resultado:
Si desea que el texto aparezca sobre el botón, puede usar el siguiente xml:
<?xml version="1.0" encoding="utf-8"?>
<RadioGroup xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
<RadioButton
android:text="Text on top"
android:button="@null"
android:drawableBottom="@android:drawable/btn_radio"
android:gravity="center"
android:layout_weight="1"/>
<RadioButton
android:text="Text on top"
android:button="@null"
android:drawableBottom="@android:drawable/btn_radio"
android:gravity="center"
android:layout_weight="1"/>
</RadioGroup>
Esto dará el siguiente resultado:
Soy nuevo en Android y necesito agregar botones de opción a mi actividad, pero debo colocar el texto en el botón de la viñeta.
Cualquier ayuda por favor. Encontré lo siguiente, aunque no entiendo qué es @ drawable / main_selector y @ style / TabStyle.
Radiobutton con texto en la parte superior
¿Alguien puede darme una guía 101?
ACTUALIZAR
Usé lo siguiente según algunas sugerencias, pero no funcionó:
<RadioGroup xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
<RadioButton
android:text="something that is on top"
android:id="@+id/toggle_tab_left"
android:button="?android:attr/listChoiceIndicatorSingle"
style="@null"/>
<RadioButton
android:button="?android:attr/listChoiceIndicatorSingle"
android:text="something that is on top"
android:id="@+id/toggle_tab_right"
style="@null"/>
</RadioGroup>
ACTUALIZACIÓN 2
Obtuve mi solución de Warpzit, pero antes de marcar la pregunta como respondida, ¿alguien me puede ayudar con el problema de alineación a continuación? Tendré 5 botones de radio en una fila donde algunos de ellos tendrán un texto más largo dividido en 2 líneas. cuando el texto se ajusta a la pantalla, por paisaje o en tabletas, todo el texto debe estar en una línea:
ACTUALIZACIÓN 3
... dependiendo del tamaño de la pantalla, el texto puede dividirse en diferentes líneas. No será siempre estándar
Para complementar la gran respuesta de Warpzit , debes usar android:gravity="center_horizontal|bottom"
y android:layout_height="match_parent"
en los botones, para alinearlos.
Además, no es necesario copiar los botones de opción de radio de AOSP, use ?android:attr/listChoiceIndicatorSingle
.
Diseño XML
<RadioGroup xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/radioGroup1"
android:layout_width="400dp"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="20dp" >
<RadioButton
android:id="@+id/radio0"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:button="@null"
android:drawableBottom="?android:attr/listChoiceIndicatorSingle"
android:gravity="center_horizontal|bottom"
android:text="RadioButton" />
<RadioButton
android:id="@+id/radio1"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:button="@null"
android:drawableBottom="?android:attr/listChoiceIndicatorSingle"
android:gravity="center_horizontal|bottom"
android:text="RadioButton dsfsdfsdfsdfsdf" />
<RadioButton
android:id="@+id/radio2"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:button="@null"
android:drawableBottom="?android:attr/listChoiceIndicatorSingle"
android:gravity="center_horizontal|bottom"
android:text="RadioButton fdsfsd fdsfsdf fsfsdfs" />
</RadioGroup>