2010-07-02 71 views
37

我目前這樣做:如何設置uiclearcolor的alpha?

UIColor *myColor = [UIColor clearColor]; 

這是偉大的,但我想指定「myColor」有一定的透明度。我會怎麼做?

+1

'+ [UIColor clearColor]'實際上會返回100%透明度(或0%不透明度或0.0的alpha值)的黑色。如果您現在需要特定alpha的黑色,請使用'+ [UIColor blackColor]'1.0 alpha或' - [UIColor colorWithWhite:alpha:]' – 2015-07-09 15:55:09

回答

11

[UIColor clearColor]是,我該怎麼說呢,清楚!

這是一個方便的類方法返回一個UIColor與零在alpha。

如果你想與透明度佔比量顏色:

+ (UIColor *)colorWithRed:(CGFloat)red green:(CGFloat)green blue:(CGFloat)blue alpha:(CGFloat)alpha 

或其他UIColor類方法之一。

11

您可以使用colorWithWhite:alpha像這樣:

[UIColor colorWithWhite:1.0 alpha:0.5]; 

或者,如果你想有一個特定的顏色:

[UIColor colorWithRed:1.0 green:1.0 blue:0.3 alpha:0.72]; 

退房the docs

126

如果你有一個現有的顏色,你可以返回一個新的具有指定的alpha,像這樣:

- (void)setBackgroundColor:(UIColor *)color 
{ 
    self.backgroundColor = [color colorWithAlphaComponent:0.3f]; 
} 
+3

+ 1如果您已經有一種顏色並且想要設置不透明度不可能與其他APIS .. – Krishnan 2013-01-26 15:42:13

+2

只是真棒! – 2014-03-06 13:34:15

+0

非常感謝! – Supertecnoboff 2015-11-15 15:46:42

5

對於斯威夫特,你可以使用:

UIColor.black.withAlphaComponent(0.5) 

或RGB顏色:

UIColor(red: 0/255.0 , green: 0/255.0 , blue: 0/255.0 , alpha: 0.5) 
0

如果您更喜歡簡單但仍然po wownt在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) 

我希望它能幫助!

0

要回答這個問題

UIColor *myColor = [[UIColor clearColor] colorWithAlphaComponent:0.3f]; 

我認爲你有 「clearColor」 爲有效的UIColor;

@refer James O'Brien解決方案;

相關問題