Налаштуйте альфа UIColor


106

Я встановив за UIColorдопомогою rgb фон a UILabel. Я намагаюся налаштувати alphaєдине. Як я можу змінити альфа існуючого rgb UIColor?

Редагувати

В основному у мене є UILabelsнабір UIColor(використовуючи rgb), і я не знаю, що це за колір UILabels. У певний момент мені доведеться змінити labelsальфа`. Як я можу просто змінити альфа-кольори міток?


Заздалегідь визначений UIColor? Для мітки ви можете використовувати .alphaвластивість.
LinusGeffarth

Дякуємо за відповідь !. У мене є попередньо визначений UIColor. Я не хочу встановлювати мітки альфа, але кольори альфа
Ерік,

Відповіді:


187

colorWithAlphaComponent: зробив трюк.

Тому я повинен був зробити:

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

Чи є різниця між цим підходом і скажіть це? UIColor(red:0.07, green:0.44, blue:0.54, alpha:0.4)
Changerrs

@Changerrs: можуть бути випадки, коли нам потрібно застосувати альфа до наявного кольору. тобто існуючі кольори не можна змінювати. Отже, для таких випадків у нас вже є значення кольору, але тоді потрібно застосувати до нього альфа, отже, колірWithAlphaComponent стане в нагоді для такого випадку.
Bishal Ghimire

83

Швидкий 3 та 4

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

Швидкий 2

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

13

Якщо у вас визначені спеціальні кольори, ви також можете це зробити:

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

9

чому б не використовувати label.alpha = 0.5? щоб змінити альфа-марку вашої мітки?

оновлення: якщо ви хочете налаштувати альфа зі старого кольору, ось приклад:

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

}

Я не хочу встановлювати мітки альфа, я хочу встановити ярлики кольором альфа
Ерік,

Де різниця?
LinusGeffarth

Якщо я встановлю альфа цілої етикетки, текст також стане світлішим, оскільки я встановлюю колір тла етикетки
Ерік,

@Eric Ви маєте на увазі зміну альфа кольору з існуючого UIColor?
JZAU

2

Будь ласка, введіть альфа-код нижче -

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

У мене є цей код, але я хочу змінити лише альфа
Ерік

Ви хочете встановити колір тла UIlabel і хочете змінити альфа UILabel? Будь ласка, скористайтесь вище кодом
Santu C

[UIColor colorWithRed: 200,0 / 255 зелений: 191,0 / 255 синій: 231,0 / 255 альфа: 1,0] змінити так
Arun

Так правильно, вибачте помилково
Santu C
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.