Modification des couleurs d'arrière-plan dégradées sur Android au moment de l'exécution
Je suis en train d'expérimenter avec Drawable origines et n'ont pas eu de problèmes jusqu'à présent.
Je vais maintenant essayer de changer l'arrière-plan dégradé de couleur au moment de l'exécution.
Malheureusement, il n'y a pas d'API pour le changer lors de l'exécution, il me semble. Pas même en essayant de se muter() le drawable, comme expliqué ici: Drawable mutations
L'exemple de XML ressemble à ceci. Il fonctionne comme prévu.
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:startColor="#330000FF"
android:endColor="#110000FF"
android:angle="90"/>
</shape>
Malheureusement, je veux une liste avec de diverses couleurs, et ils ont à être modifié par programmation à l'exécution.
Est-il une autre façon de créer cette dégradé d'arrière-plan au moment de l'exécution? Peut-être même pas à l'aide de XML en tout?
source d'informationauteur Phenome
Vous devez vous connecter pour publier un commentaire.
Oui! Trouvé un moyen!
Dû oublier à propos de XML, mais voici comment je l'ai fait:
Sur mon getView() fonction surchargée (ListAdapter) j'ai juste eu à:
Et qui m'a donné le même résultat que le code XML de fond ci-dessus. Maintenant, je peux définir par programmation la couleur d'arrière-plan.
J'ai essayé d'utiliser Phenome de solution pour le Bouton de point de vue. Mais de toute façon il n'a pas de travail.
Je suis venu avec quelque chose d'autre: (avec l'aimable autorisation de l'API Android Démo exemples)
Essayer mon code ci-dessous:
Méthode pour la génération aléatoire de la couleur:
Selon vos besoins, à l'aide d'un la couleur de l'etat liste au lieu d'une couleur fixe pour startColor et endColor de pouvoir faire ce que vous voulez.