2009-09-10 9 views

Répondre

0

Utiliser des opérations de bits - quarts de travail et masques:

int rgb = 0x123456; 

int red = (rgb >>> 16) & 0xff; 
int green = (rgb >>> 8) & 0xff; 
int blue = (rgb >>> 0) & 0xff; 

(Il est évident que le déplacement vers la droite par 0 est hors de propos, mais il est bien cohérent.)

Si vous ne l'avez pas déjà votre Valeur RVB sous la forme d'un nombre entier, veuillez donner plus de détails dans votre question.

2

Il est pas clair ce que votre question est, mais en supposant la couleur est une chaîne, alors je pense que vous pouvez le faire:

String color = "#12FFFF"; 
int rgb = Integer.decode(color); 
Color c = new Color(rgb); 
int red = c.getRed(); 
int green = c.getGreen(); 
int blue = c.getBlue(); 

Voici le doc pour Color

0
int rgb = 0x123456; 

Color c = new Color(rgb); 
int red = c.getRed(); 
int blue = c.getBlue(); 
int green = c.getGreen(); 

Si l'hexagone est Dans une chaîne, vous devrez d'abord créer un Long et prendre la valeur intValue() pour construire la couleur.

Questions connexes