Android: Modification de la couleur de composants radiobutton et cases à cocher par programmation
J'ai créé RadioButton
et CheckBox
dans LinearLayout
par programmation. Mais, maintenant, je veux changer le bouton radio de la couleur et de cases de couleur. J'utilise
RadioButton.setHighlightColor(Color.parseColor("#0c83bd"));
checkbox.setHighlightColor(Color.parseColor("#0c83bd"));
Mais il ne fonctionne pas.
- utiliser les images de fond
- mais je veux mettre de la couleur pas de joindre des images
- est-il une fonction disponible sur l'android support library?
Vous devez vous connecter pour publier un commentaire.
Essayer cette
Place de
Utilisation AppCompatCheckBox et AppCompatRadioButton au lieu de Case et RadioButton.
Votre xml aura :
Maintenant pour le code java :
Créer ColorStateList
Pour modifier la couleur par programmation pour AppCompatRadioButton ou AppCompatCheckBox appel setSupportButtonTintList.
Vous pouvez créer des dynamiques
RadioButton
comme ceci:Ce est utilisé pour changer la couleur par défaut du cercle de
RadioButton
.Pour
CheckBox
, remplacer votreCheckBox
avecAppCompatCheckBox
et d'appeler la méthode suivante:Je pense qu'il devrait être similaire pour
RadioButton
. Vous pouvez le vérifier déclaré attributs dansandroid.R.attr
et modifier le code.Je suis en continuant la réponse de ywwynm.
Google a fait l'setSupportButtonTintList restreint, de sorte qu'il n'est pas possible de l'utiliser.
La solution de contournement consiste à utiliser le bouton comme un TintableCompoundButton interface, dans laquelle la méthode n'est pas limité.
Œuvres de l'API de 19+ pour AppCompatRadioButton. AppCompatCheckbox implémente la même interface, donc il devrait fonctionner aussi bien en théorie, mais je ne l'ai pas testé.
Amusez-vous 🙂