Dostosuj alfa UIColor


106

Ustawić UIColorza pomocą RGB na tle o UILabel. Próbuję dostosować alphajedyne. Jak mogę zmodyfikować alfa istniejącego rgb UIColor?

Edytować

Zasadniczo mam UILabelsto zestaw UIColor(używając rgb) i nie będę wiedział, jakiego koloru UILabelssą. W pewnym momencie będę musiał zmienić labelsalfę ”. Jak mogę po prostu zmienić kolor alfa etykiet?


Z góry zdefiniowanego UIColor? Jako etykiety możesz użyć .alphawłaściwości.
— LinusGeffarth

Dzięki za odpowiedzi!. Mam predefiniowany UIColor. Nie chcę ustawiać etykiet alfa, ale kolory alfa
— Eric

Odpowiedzi:


187

colorWithAlphaComponent: załatwił sprawę.

Musiałem więc:

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

czy jest jakaś różnica między tym podejściem a tym? UIColor(red:0.07, green:0.44, blue:0.54, alpha:0.4)
— Changerrs

@Changerrs: mogą się zdarzyć przypadki, kiedy będziemy musieli zastosować alfa do istniejącego koloru. tj. istniejących kolorów nie można modyfikować. Stąd w takich przypadkach mamy już wartość koloru, ale potem musimy zastosować do niej alfa, stąd przydaje się w takim przypadku colorWithAlphaComponent.
— Bishal Ghimire

83

Swift 3 i 4

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

Szybki 2

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

13

Jeśli masz zdefiniowane kolory niestandardowe, możesz to również zrobić:

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

9

dlaczego nie używać label.alpha = 0.5? dostosować alfa etykiety?

aktualizacja: jeśli chcesz dostosować alfa ze starego koloru, oto przykład:

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

}

Nie chcę ustawiać etykiet alfa, chcę ustawić kolor etykiet alfa
— Eric

Gdzie jest różnica?
— LinusGeffarth

Jeśli ustawię alfa całej etykiety, to tekst również stanie się jaśniejszy, ponieważ ustawiam kolor tła etykiety
— Eric

@Eric Czy masz na myśli zmianę alfa koloru z istniejącego UIColor?
— JZAU

2

Proszę ustawić alfa w poniższym kodzie -

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

Mam ten kod, ale chcę zmodyfikować tylko alfę
— Eric

chcesz ustawić kolor tła UIlabel i zmienić alfa UILabel, prawda? Proszę użyć powyższego kodu
— Santu C

[UIColor colorWithRed: 200,0 / 255 zielony: 191,0 / 255 niebieski: 231,0 / 255 alpha: 1,0] zmień w ten sposób
— Arun

Tak, dobrze, przepraszam przez pomyłkę
— Santu C
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.