Aplicación de un tema a los botones de radio dinámicos en Android

Tengo un tema en mi uso que defina el textappearance del defecto y el estilo del botón.

<style name="AppTheme" parent="@android:style/Theme.Light.NoTitleBar.Fullscreen"> <item name="android:textAppearance">@style/TextAppearance.Medium</item> <item name="android:textAppearanceLarge">@style/TextAppearance.Large</item> <item name="android:textAppearanceMedium">@style/TextAppearance.Small</item> <item name="android:textAppearanceSmall">@style/TextAppearance.Medium</item> <item name="android:textColorPrimary">#000000</item> <item name="android:textColorSecondary">#000000</item> <item name="android:textColorTertiary">#000000</item> <item name="android:buttonStyle">@style/Button</item> </style> <style name="TextAppearance" parent="@android:style/TextAppearance"> <item name="android:textColor">?android:attr/textColorPrimary</item> <item name="android:textColorHint">?android:attr/textColorHint</item> </style> <style name="TextAppearance.Large"> <item name="android:textColor">?android:attr/textColorPrimary</item> <item name="android:textSize">32dp</item> <item name="android:textStyle">bold</item> </style> <style name="TextAppearance.Medium"> <item name="android:textColor">?android:attr/textColorSecondary</item> <item name="android:textSize">22dp</item> </style> <style name="TextAppearance.Small"> <item name="android:textColor">?android:attr/textColorTertiary</item> <item name="android:textSize">18dp</item> </style> <style name="Button" parent="@android:style/Widget.Button"> <item name="android:textColor">?android:attr/textColorSecondary</item> <item name="android:textColorHint">?android:attr/textColorHint</item> <item name="android:textStyle">normal</item> <item name="android:textAppearance">?android:attr/textAppearanceSmall</item> </style> 

Cuando creo un RadioButton usando

 RadioButton radioButton = new RadioButton(this, null, R.style.AppTheme); 

Se crea el RadioButton y el texto se diseña correctamente, pero el marcador marcado desaparece. ¿Por qué?

Tengo el Radiobutton en un Buttongroup, donde agrego dinámicamente los botones. Cuando agrego un botón a través del diseño, el marcador se muestra correctamente. Pero los botones agregados dinámicamente no.

La solución fue usar el constructor RadioButton (este).

Todos los estilos establecidos con el defStyle-Constructor fueron ignorados y el marcador fue eliminado. No estoy seguro si esto es un error o no está documentado.

En realidad no lo necesito ya que los otros estilos de mi styles.xml se aplican al botón automáticamente ahora, pero si alguien está interesado:

Añadiendo

 <item name="android:radioButtonStyle">@style/MyRadioButton</item> 

A mi "AppTheme" -Style y

 <style name="MyRadioButton" parent="@android:style/Widget.CompoundButton.RadioButton"> <item name="android:textSize">5dp</item> </style> 

Al style.xml hace que todos mis radiobotones muestren el marcador Y estilizan el texto ( sin configurarlo en el constructor).

  • Eliminar el efecto sombra en el botón android
  • Cómo establecer el estilo ListView en el recurso?
  • Android: Theme Holo versión anterior
  • TextView de Android cambia textColor con tema
  • Android: Estilo de preferencia
  • Cambiar Theme.Dialog para que parezca Theme.Light.Dialog en Android
  • StyleSpan no se aplica a SpannableString en TextView
  • Android - tema de los padres desaparecidos?
  • Cambio de tema de diálogo para cada cuadro de diálogo
  • Modificación del diseño del título de diálogo en Android
  • Estilo SnackBar en la aplicación de tema
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.