2011-07-10 2 views
14

J'ai créé un fichier colors.xml dans mon application Android sous /res/values/colors.xml. Le contenu est ...La ressource colors.xml ne fonctionne pas

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <color name="Green">#00ff00</color> 
</resources> 

je tente de mettre à jour l'arrière-plan de mon un TableRow en utilisant ...

TableRow test = (TableRow)findViewById(R.id.tableRow2); 
    test.setBackgroundColor(R.color.Green); 

Cela ne le met pas en vert, il est plutôt gris. Peu importe les valeurs que j'ajoute au fichier colors.xml, il s'agit toujours de la même couleur grise. Cependant cela fonctionne ...

TableRow test = (TableRow)findViewById(R.id.tableRow2); 
    test.setBackgroundColor(android.graphics.Color.GREEN); 

Quelque chose ne va pas avec mon colors.xml?

Répondre

21

Vous devez utiliser ceci:

Son malheureux qui ont même type ID ressource et couleur: int. Vous devriez obtenir la valeur de couleur des ressources via getColor() et utiliser cette valeur comme couleur. Pendant que vous utilisez l'ID de ressource en tant que couleur.

+0

Fonctionne parfaitement. Merci! – b10hazard

4

Essayez plutôt en utilisant la commande setBackgroundResource, à savoir

TableRow test = (TableRow)findViewById(R.id.tableRow2); 
test.setBackgroundResource(R.color.Green); 
+0

Cela a également fonctionné. Merci! – b10hazard

Questions connexes