Mam UITextField
, który ma już nałożony rgb
na kolor tła. Próbuję ustawić alfa koloru tła. Jak mogę ustawić alfa bez ponownego wstawiania całego koloru rgb
w Objective-c
?Jak zmienić kanał alfa istniejącego koloru tła?
6
A
Odpowiedz
8
Patrzysz na coś takiego:
CGFloat newAlpha = 0.7;
CGColorRef color = CGColorCreateCopyWithAlpha(self.yourTextField.layer.backgroundColor, newAlpha);
[self.yourTextField.layer setBackgroundColor:color];
Albo jeśli już wiesz, kolor i po prostu chcą aktualny alpha:
CGFloat alpha = CGColorGetAlpha(self.yourTextField.layer.backgroundColor); //Get current alpha
self.yourTextField.layer.backgroundColor = [UIColor colorWithRed:1.0 green:1.0 blue:1.0 alpha:alpha].CGColor;
9
Można użyć:
UIColor *color = ...;
color = [color colorWithAlphaComponent:0.5f];
2
W Swift 3 lub 4:
let color: UIColor = UIColor.black.withAlphaComponent(0.7)
Czy możesz zaktualizować to do UIColor, a także CGColor? –