J'étais accro quand je jouais avec la conception d'interface utilisateur dans le développement Android, alors j'ai essayé de l'organiser. Vous pouvez spécifier la couleur à partir de l'hexadécimal ou du fichier de ressources. Il n'y a pas de fichier de ressources sur iOS, il m'a donc fallu un certain temps pour comprendre le concept. La chose délicate pour moi était le concept d'un fichier de ressources.
Une méthode qui peut être utilisée si une clé est définie dans color.xml du dossier Res (Resource). Une méthode courante dans la pratique.
Resource.java
Resources res = getResources();
int chocolate_color = res.getColor(R.color.chocolate);
TextView text = new TextView(this);
text.setBackgroundColor(chocolate_color);
color.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="chocolate">#d2691e</color>
</resources>
Rgb.java
TextView tv = new TextView(this);
tv.setTextColor(Color.parseColor("#FF00C0"));
// "#FF_00_C0"
// RGB
La méthode de parseColor est
public static int parseColor(String colorString)
Par conséquent, l'argument est de type «String» et la valeur de retour est de type «int».
La couleur semble être une «couleur intacte».
Argb.java
TextView tv = new TextView(this);
tv.setTextColor(Color.parseColor("#FF0F00C0"));
// "#FF_0F_00_C0"
// ARGB
Les mots clés pouvant être utilisés sont les mots clés ci-dessous
red
blue
green
black
white
gray
cyan
magenta
yellow
lightgraydarkgray
Word.java
TextView tv = new TextView(this);
tv.setTextColor(Color.parseColor("magenta"));
--Color.BLACK
: Noir
--Color.BLUE
: Bleu
--Color.CYAN
: Cyan
--Color.DKGRAY
: Gris foncé
--Color.GRAY
: Gris
--Color.GREEN
: Vert
--Color.LTGRAY
: Gris clair
--Couleur.MAGENTA
: Magenta
--Color.RED
: Rouge
--Color.TRANSPARENT
: Transparent
--Couleur.WHITE
: Blanc
--Couleur.JAUNE
: Jaune
Intcolor.java
String white = "#ffffff";
int whiteInt = Color.parseColor(white);
TextView text = new TextView(this);
text.setBackgroundColor(whiteInt);
hex.java
public static String bin2hex(byte[] data) {
StringBuffer sb = new StringBuffer();
for (byte b : data) {
String s = Integer.toHexString(0xff & b);
if (s.length() == 1) {
sb.append("0");
}
sb.append(s);
}
return sb.toString();
}
public static byte[] hex2bin(String hex) {
byte[] bytes = new byte[hex.length() / 2];
for (int index = 0; index < bytes.length; index++) {
bytes[index] = (byte) Integer.parseInt(hex.substring(index * 2, (index + 1) * 2), 16);
}
return bytes;
}
Je pense que si vous maintenez cette pression, vous pourrez effectuer une conversion de couleur immédiatement après avoir vu cette page.