web-dev-qa-db-fra.com

Ajuster l'alpha de UIColor

J'ai défini un UIColor à l'aide de rgb sur un arrière-plan d'un UILabel. J'essaie d'ajuster le alpha uniquement. Comment puis-je modifier l'alpha d'un rgb existant UIColor?

Éditer

En gros, j'ai UILabels qui a un ensemble UIColor (en utilisant rgb), et je ne saurai pas quelle couleur sont les UILabels. À un moment donné, je devrai changer le labels alpha`. Comment puis-je changer les étiquettes couleur alpha?

87
Eric

colorWithAlphaComponent: a fait le tour.

Donc ce que je devais faire était:

self.mylabel.backgroundColor = [self.myLabel.backgroundColor colorWithAlphaComponent:0.3];
169
Eric

Swift 3 & 4

yourUIView.backgroundColor = UIColor.white.withAlphaComponent(0.75)

Swift 2

yourUIView.backgroundColor = UIColor.whiteColor().colorWithAlphaComponent(0.75)
64
GraSim

Si vous avez défini des couleurs personnalisées, vous pouvez également le faire:

view.backgroundColor = [[MyClass someColor] colorWithAlphaComponent:0.25];
12
chris g

pourquoi ne pas utiliser label.alpha = 0.5? ajuster l'alpha de votre étiquette?

update: si vous souhaitez ajuster l'alpha à partir d'une ancienne couleur, voici un exemple:

UIColor uicolor = [UIColor greenColor];
CGColorRef color = [uicolor CGColor];

int numComponents = CGColorGetNumberOfComponents(color);

UIColor newColor;
if (numComponents == 4)
{
    const CGFloat *components = CGColorGetComponents(color);
    CGFloat red = components[0];
    CGFloat green = components[1];
    CGFloat blue = components[2];
    newColor = [UIColor colorWithRed: red green: green blue: blue alpha: YOURNEWALPHA];

}
7
JZAU

S'il vous plaît définir alpha dans le code ci-dessous -

[UIColor colorWithRed:200.0/255.0 green:191.0/255.0 blue:231.0 /255.0 alpha:1.0]
2
Santu C