2016-01-12 40 views
-1

我有一個圖標資源在界面生成器,我有我的按鈕圖像。我可以改變它的顏色使用你可以有一個漸變作爲一個按鈕tintColor?

button.tintColor = UIColor.blueColor() 

我可以將漸變應用到tintColor屬性嗎?

UPDATE

爲了清楚起見,我的PNG圖像圖標具有不同的形狀,心臟,攝像頭,這是我設置爲模板圖像。他們都有透明的背景。

回答

1

您可以將CAGradientLayer插入您的按鈕並應用tintColor。

另一種方式是繼承的UIButton,並在drawRect中,使用CoreGraphics中繪製漸變效果,如:

-(void) drawRect:(CGRect)rect 
{ 
    ... 
    // setup up your tint color for startColor, endColor 
    drawLinearGradient(context, rect, startColor, endColor); 
} 

如果你有一個透明背景,你可以用你的觀點的層的mask屬性來實現梯度。

+0

不完全確定你的意思。我的圖標是一顆具有透明背景的心臟,以上需要我繪製心臟的路徑並填充它嗎? – TravelNVal

+0

我不是特定的,因爲不同的按鈕有很多不同的圖標。只有具體的幫助澄清答案。不要粗魯,爲什麼不幫忙?您的評論不需要也不需要。除非我搜索過,否則我不會發布。 @matt – TravelNVal

+0

@TravelNVal如果你知道誰是亞光,那麼你不會這麼說。知道如何搜索和解決很重要。你的問題確實不夠清楚。如果你有一個透明的背景,你可以使用你的視圖的圖層的蒙板屬性來實現漸變。我相信在我的答案中的關鍵字已經給了你開始谷歌和代碼 – Wingzero

相關問題