Ответ 1
colorWithAlphaComponent:
сделал трюк.
Так что мне нужно было сделать:
self.mylabel.backgroundColor = [self.myLabel.backgroundColor colorWithAlphaComponent:0.3];
Я установил UIColor
, используя rgb, на фон UILabel
. Я пытаюсь настроить только alpha
. Как изменить альфа существующего rgb UIColor
?
Edit
В основном у меня есть 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
? настроить альфа-метку?
update: если вы хотите настроить альфа из старого цвета, вот пример:
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];
Пожалуйста, установите альфа-код ниже -
[UIColor colorWithRed:200.0/255.0 green:191.0/255.0 blue:231.0 /255.0 alpha:1.0]