2017-03-04 4 views
0

J'essaye de dessiner un dégradé mais mes couleurs sont éteintes. Pour simplifier, permettez-moi d'essayer de dessiner quelque chose de la même couleur que l'arrière-plan de ma vue de table, c'est-à-dire [UIColor darkGrayColor]. Mon code de dessin ressemble à ceci:La couleur de dégradé est trop claire dans ios

CGColorSpaceRef myColorspace = CGColorSpaceCreateWithName(kCGColorSpaceGenericRGB); 
redEndColor = 1./3.; 
greenEndColor = 1./3.; 
blueEndColor = 1./3.; 
alphaEndColor = 1.; 
redStartColor = redEndColor; 
greenStartColor = greenEndColor; 
blueStartColor = blueEndColor; 
alphaStartColor = alphaEndColor; 

CGFloat components[8] = {redStartColor, greenStartColor, blueStartColor, alphaStartColor, redEndColor, greenEndColor, blueEndColor, alphaEndColor }; 

CGGradientRef myGradient = CGGradientCreateWithColorComponents (myColorspace, components,locations, 2); 
CGContextDrawLinearGradient(context, myGradient, myStartPoint, myEndPoint, 0); 

Mais la couleur dessinée est trop claire (voir image). Qu'est-ce que je fais peut-être mal?

enter image description here

Répondre

0

Pour mémoire, l'espace colorimétrique était faux et je devais remplacer la première ligne du snipper de code ci-dessus par

CGColorSpaceRef myColorspace = CGColorSpaceCreateWithName(kCGColorSpaceSRGB);