调整UIColor的alpha

我使用rgb将UIColor设置为UILabel的背景。 我只是想调整alpha 。 我如何修改现有的rgb UIColor的alpha?

编辑

基本上我有UILabels有一个UIColor (使用rgb),我不知道UILabels是什么颜色。 在某个时候,我将不得不改变labels alpha`。 我怎样才能改变标签颜色阿尔法?

colorWithAlphaComponent:做了诡计。

所以我必须做的是:

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

对于Swift 2,新的语法是:

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

或者Swift 3:

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

为什么不使用label.alpha = 0.5 ? 调整你的标签的阿尔法?

更新:如果你想从旧颜色调整alpha,这里是一个例子:

 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]; } 

如果你定义了自定义颜色,你也可以这样做:

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

请在下面的代码中设置alpha –

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