Pourquoi TextColor(0XFF0000); retoune une texte invisible
Résolu/Fermé
JackDannyL
Messages postés
12
Date d'inscription
dimanche 29 décembre 2013
Statut
Membre
Dernière intervention
8 janvier 2014
-
29 déc. 2013 à 15:28
JackDannyL Messages postés 12 Date d'inscription dimanche 29 décembre 2013 Statut Membre Dernière intervention 8 janvier 2014 - 29 déc. 2013 à 17:14
JackDannyL Messages postés 12 Date d'inscription dimanche 29 décembre 2013 Statut Membre Dernière intervention 8 janvier 2014 - 29 déc. 2013 à 17:14
2 réponses
KX
Messages postés
16733
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
31 janvier 2024
3 015
29 déc. 2013 à 16:14
29 déc. 2013 à 16:14
Qui a dit que 0xFF0000 correspondait à la couleur rouge ?
"le titre dit tout"
Est-ce qu'il dit par exemple quel est le type de données de Bouton1 ? Non !
Par défaut on a tendance à penser qu'en Java tu fais du Swing, mais setTextColor n'existe pas ! Du coup je pars du principe que tu fais de la programmation Android et que Bouton1 est un TextView, mais c'est loin d'être évident si tu ne le dis pas !
Tu pourrais donc faire par exemple :
Remarque : pour comprendre, il faut savoir que Java gère la transparence, ainsi la couleur est au format 0xAARRGGBB, où AA est la transparence. Si tu mets 0xFF0000 cela correspond à faire 0x00FF0000 tu as donc AA=00 donc ta couleur est totalement transparente et rien ne s'affiche, alors que 0xFFFF0000 devrait fonctionner. Mais c'est le genre de mécanique interne que tu n'as pas à connaître, il vaut mieux privilégier l'utilisation des constantes comme je l'ai fait avec R.color.
"le titre dit tout"
Est-ce qu'il dit par exemple quel est le type de données de Bouton1 ? Non !
Par défaut on a tendance à penser qu'en Java tu fais du Swing, mais setTextColor n'existe pas ! Du coup je pars du principe que tu fais de la programmation Android et que Bouton1 est un TextView, mais c'est loin d'être évident si tu ne le dis pas !
Tu pourrais donc faire par exemple :
int aaptID = R.color.holo_red_dark; Bouton1.setTextColor(getResources().getColor(aaptId));
Remarque : pour comprendre, il faut savoir que Java gère la transparence, ainsi la couleur est au format 0xAARRGGBB, où AA est la transparence. Si tu mets 0xFF0000 cela correspond à faire 0x00FF0000 tu as donc AA=00 donc ta couleur est totalement transparente et rien ne s'affiche, alors que 0xFFFF0000 devrait fonctionner. Mais c'est le genre de mécanique interne que tu n'as pas à connaître, il vaut mieux privilégier l'utilisation des constantes comme je l'ai fait avec R.color.
JackDannyL
Messages postés
12
Date d'inscription
dimanche 29 décembre 2013
Statut
Membre
Dernière intervention
8 janvier 2014
29 déc. 2013 à 17:14
29 déc. 2013 à 17:14
Oui désolé je programme pour android sous eclipse. Et je suis graphiste donc je sais comment connaitre mes couleurs hexadecimale.
Merci beaucoup de l'explication sur la transparence.
Les Couleurs Hexadecimale sont beaucoup plus précise voila pq je prévilégie ce type de donné pour la couleur.
Merci encore
Merci beaucoup de l'explication sur la transparence.
Les Couleurs Hexadecimale sont beaucoup plus précise voila pq je prévilégie ce type de donné pour la couleur.
Merci encore