iOS漸變色背景繪制

一直繪圖這方面知識(shí)就記的不牢固巫俺,每次畫完過(guò)段時(shí)間又給忘了怎么畫咯,最近需要畫下漸變色剖淀,特此記錄下纯蛾。

一、使用CAGradientLayer

//  創(chuàng)建 CAGradientLayer 對(duì)象

CAGradientLayer *gradientLayer = [CAGradientLayer layer];

//  設(shè)置 gradientLayer 的 Frame

gradientLayer.frame = self.bounds;

//  創(chuàng)建漸變色數(shù)組纵隔,需要轉(zhuǎn)換為CGColor顏色

gradientLayer.colors = @[(id)kColorWithRGB(243, 199, 161).CGColor,

(id)kColorWithRGB(252, 100, 25).CGColor];

//  設(shè)置顏色變化點(diǎn)翻诉,取值范圍 0.0~1.0

//        gradientLayer.locations = @[@0 ,@1];

//  設(shè)置漸變顏色方向,左上點(diǎn)為(0,0), 右下點(diǎn)為(1,1)

gradientLayer.startPoint = CGPointMake(0, 0);

gradientLayer.endPoint = CGPointMake(0, 1);

//  添加漸變色到創(chuàng)建的 UIView 上去

[self.layer addSublayer:gradientLayer];

二巨朦、code

- (void)drawRect:(CGRect)rect {

// Drawing code

CGContextRef context = UIGraphicsGetCurrentContext();

// 繪制顏色漸變

// 創(chuàng)建色彩空間對(duì)象

CGColorSpaceRef colorSpaceRef = CGColorSpaceCreateDeviceRGB();

// 創(chuàng)建起點(diǎn)顏色

CGColorRef beginColor = CGColorCreate(colorSpaceRef, (CGFloat[]){243/255.0f, 199/255.0f, 161/255.0f, 1});

// 創(chuàng)建終點(diǎn)顏色

CGColorRef endColor = CGColorCreate(colorSpaceRef, (CGFloat[]){252/255.0f, 100/255.0f, 25/255.0f, 1});

// 創(chuàng)建顏色數(shù)組

CFArrayRef colorArray = CFArrayCreate(kCFAllocatorDefault, (const void*[]){beginColor, endColor}, 2, nil);

// 創(chuàng)建漸變對(duì)象

CGGradientRef gradientRef = CGGradientCreateWithColors(colorSpaceRef, colorArray, (CGFloat[]){

0.0f,     // 對(duì)應(yīng)起點(diǎn)顏色位置

1.0f    // 對(duì)應(yīng)終點(diǎn)顏色位置

});

// 釋放顏色數(shù)組

CFRelease(colorArray);

// 釋放起點(diǎn)和終點(diǎn)顏色

CGColorRelease(beginColor);

CGColorRelease(endColor);

// 釋放色彩空間

CGColorSpaceRelease(colorSpaceRef);

CGContextDrawLinearGradient(context, gradientRef, CGPointMake(0, 0), CGPointMake(0, 1), 0);

// 釋放漸變對(duì)象

CGGradientRelease(gradientRef);

}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末米丘,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子糊啡,更是在濱河造成了極大的恐慌拄查,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,277評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件棚蓄,死亡現(xiàn)場(chǎng)離奇詭異堕扶,居然都是意外死亡碍脏,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門稍算,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)典尾,“玉大人,你說(shuō)我怎么就攤上這事糊探〖毓。” “怎么了?”我有些...
    開封第一講書人閱讀 163,624評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵科平,是天一觀的道長(zhǎng)褥紫。 經(jīng)常有香客問(wèn)我,道長(zhǎng)瞪慧,這世上最難降的妖魔是什么髓考? 我笑而不...
    開封第一講書人閱讀 58,356評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮弃酌,結(jié)果婚禮上氨菇,老公的妹妹穿的比我還像新娘。我一直安慰自己妓湘,他們只是感情好查蓉,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,402評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著多柑,像睡著了一般奶是。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上竣灌,一...
    開封第一講書人閱讀 51,292評(píng)論 1 301
  • 那天聂沙,我揣著相機(jī)與錄音,去河邊找鬼初嘹。 笑死及汉,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的屯烦。 我是一名探鬼主播坷随,決...
    沈念sama閱讀 40,135評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼驻龟!你這毒婦竟也來(lái)了温眉?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,992評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤翁狐,失蹤者是張志新(化名)和其女友劉穎类溢,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體露懒,經(jīng)...
    沈念sama閱讀 45,429評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡闯冷,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,636評(píng)論 3 334
  • 正文 我和宋清朗相戀三年砂心,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蛇耀。...
    茶點(diǎn)故事閱讀 39,785評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡辩诞,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出纺涤,到底是詐尸還是另有隱情译暂,我是刑警寧澤,帶...
    沈念sama閱讀 35,492評(píng)論 5 345
  • 正文 年R本政府宣布洒琢,位于F島的核電站秧秉,受9級(jí)特大地震影響褐桌,放射性物質(zhì)發(fā)生泄漏衰抑。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,092評(píng)論 3 328
  • 文/蒙蒙 一荧嵌、第九天 我趴在偏房一處隱蔽的房頂上張望呛踊。 院中可真熱鬧,春花似錦啦撮、人聲如沸谭网。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,723評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)愉择。三九已至,卻和暖如春织中,著一層夾襖步出監(jiān)牢的瞬間锥涕,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,858評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工狭吼, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留层坠,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,891評(píng)論 2 370
  • 正文 我出身青樓刁笙,卻偏偏與公主長(zhǎng)得像破花,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子疲吸,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,713評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容