Appliquer un Thème à une Dynamique de Boutons Radio dans Android
J'ai un Thème dans mon Application qui définit par défaut textappearance et Bouton Style.
<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>
Quand je crée un composant RadioButton à l'aide
RadioButton radioButton = new RadioButton(this, null, R.style.AppTheme);
La case d'option est créé et le texte est de style correctement mais le vérifiée marqueur disparaît. Pourquoi?
J'ai le Radiobutton dans un Buttongroup, où j'ai ajouter dynamiquement les boutons. Quand j'ai ajouter un Bouton via la mise en page de marqueur s'affiche correctement. Mais la dynamique ajouté des boutons de ne pas.
Vous devez vous connecter pour publier un commentaire.
La solution a été d'utiliser la
RadioButton(cet)
constructeur.
Tous les stylings ensemble avec le defStyle-Constructeur ont été ignorés et le marqueur ont été supprimés. Je ne suis pas sûr si c'est un bug ou il n'est pas documentée.
Je n'ai absolument pas besoin, depuis l'autre stylings de mon styles.xml appliquer à la touche automatiquement, mais si quelqu'un est intéressé:
ajoutant
à mon "AppTheme"Style et
à l'style.xml fait tous mes composants radiobutton afficher le marqueur ET le style du texte (sans paramètre dans le constructeur).
Comme pour moi, cela a été résolu avec succès en utilisant simplement inflater:
Jetez un oeil à la réponse complète!
De l'espoir, ça va aider quelqu'un.