J'utilise la forme d'attribut comme ceci:Comment changer la couleur de TextView à l'exécution avec l'attribut de forme sur Android?
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle"
android:padding="10dp">
<solid
android:color="#FFFFFF" />
<corners
android:bottomRightRadius="15dp"
android:bottomLeftRadius="15dp"
android:topLeftRadius="15dp"
android:topRightRadius="15dp" />
</shape>
et
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/rounded_textview">
</TextView>
Si je change la couleur lors de l'exécution avec la méthode suivante:
TextView.setBackgroundColor();
La forme est je disparaître. Que dois-je faire pour le changer de la bonne façon? Ou devrais-je devoir générer beaucoup de formes pour différentes couleurs?
Merci.
Je ne vois pas quelle est la connexion entre la forme et le TextView. Aussi, je suis sûr que vous ne pouvez pas appeler 'setBackgroundColor' comme ça sans arguments. Quel argument passez-vous à cette fonction? – MatrixFrog
La forme est définie comme étant l'arrière-plan de TextView dans le fichier XML. Et je passe un argument de couleur qui fonctionne. – shiami