В настоящее время я делаю это:
UIColor *myColor = [UIColor clearColor];
Это здорово, но я бы хотел указать определенную альфу "myColor". Как я могу это сделать?
В настоящее время я делаю это:
UIColor *myColor = [UIColor clearColor];
Это здорово, но я бы хотел указать определенную альфу "myColor". Как я могу это сделать?
Если у вас есть существующий цвет, вы можете вернуть новый с указанной альфа, например:
- (void)setBackgroundColor:(UIColor *)color
{
self.backgroundColor = [color colorWithAlphaComponent:0.3f];
}
[UIColor clearColor]
есть, как я должен его поместить?, clear!
Это метод класса удобства, возвращающий UIColor
с альфой в ноль.
Если вам нужен цвет с дробным количеством прозрачности:
+ (UIColor *)colorWithRed:(CGFloat)red green:(CGFloat)green blue:(CGFloat)blue alpha:(CGFloat)alpha
Или один из других методов класса UIColor
.
Вы можете использовать colorWithWhite:alpha
так:
[UIColor colorWithWhite:1.0 alpha:0.5];
Или, если вам нужен определенный цвет:
[UIColor colorWithRed:1.0 green:1.0 blue:0.3 alpha:0.72];
Отметьте документы.
Для Swift вы можете использовать:
UIColor.black.withAlphaComponent(0.5)
Или цвета RGB:
UIColor(red: 0/255.0 , green: 0/255.0 , blue: 0/255.0 , alpha: 0.5)
Если вы предпочитаете простое и еще мощное решение в Swift, тогда проверьте HandyUIKit. Установите его в свой проект с помощью Карфагена - тогда ваша жизнь станет проще:
import HandyUIKit
// creates a new UIColor object with the given value set
myColor.change(.alpha, to: 0.2)
Существует также возможность применить относительное изменение :
// create a new UIColor object with alpha increased by 0.2
myColor.change(.alpha, by: 0.2)
Надеюсь, это поможет!
Чтобы ответить на этот вопрос
UIColor *myColor = [[UIColor clearColor] colorWithAlphaComponent:0.3f];
Я предполагаю, что у вас есть clearColor как действительный UIColor;
@refer Решение Джеймса О'Брайена;