调整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]