103 votes

Comment obtenir les valeurs RVB de UIColor?

Je crée un objet de couleur en utilisant le code suivant.

 curView.backgroundColor = [[UIColor alloc] initWithHue:229 saturation:40 brightness:75 alpha:1];
 

Comment puis-je récupérer des valeurs RVB de l'objet couleur créé?

121voto

Teetotum Points 1226

Dans iOS 5, vous pouvez utiliser:

 CGFloat red = 0.0, green = 0.0, blue = 0.0, alpha =0.0;
[multipliedColor getRed:&red green:&green blue:&blue alpha:&alpha];
 

86voto

codelogic Points 22722
const CGFloat* colors = CGColorGetComponents( curView.backgroundColor.CGColor );

Ces liens fournissent de plus amples détails:

11voto

Ashok Kumar Points 1

Espérons que cela sera utile

 CGFloat red, green, blue, alpha;

//Create a sample color

UIColor *redColor = [UIColor redColor];

//Call 

[redColor getRed: &red 
  green: &green
  blue: &blue 
  alpha: &alpha];
NSLog(@"red = %f. Green = %f. Blue = %f. Alpha = %f",
  red,
  green,
  blue,
  alpha);
 

5voto

defmech Points 365
 const float* colors = CGColorGetComponents( curView.backgroundColor.CGColor );
 

Merci. Je devais ajouter le const au début de la ligne car il générait un avertissement.

5voto

Linh Nguyen Points 87
 UIColor *color = [[UIColor greenColor] retain]; //line 1

//OR(You will have color variable either like line 1 or line 2)

color = curView.backgroundColor;//line 2
CGColorRef colorRef = [color CGColor];

int _countComponents = CGColorGetNumberOfComponents(colorRef);

if (_countComponents == 4) {
    const CGFloat *_components = CGColorGetComponents(colorRef);
    CGFloat red     = _components[0];
    CGFloat green = _components[1];
    CGFloat blue   = _components[2];
    CGFloat alpha = _components[3];

    NSLog(@"%f,%f,%f,%f",red,green,blue,alpha);
}

[color release];

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X