該實(shí)戰(zhàn)分幾大篇章寒锚,會(huì)從基礎(chǔ)知識(shí)到最終實(shí)際操作一一剖析助隧,也算是對(duì)自己在這方面的一個(gè)總結(jié)
目錄結(jié)構(gòu):
基礎(chǔ)知識(shí)總結(jié)
Block基礎(chǔ)知識(shí)
GCD實(shí)戰(zhàn)
CoreGraphics & ImageIO實(shí)戰(zhàn)
CoreAnimation實(shí)戰(zhàn)
知識(shí)總結(jié)
Paste_Image.png
1361586015_7197.png
從上面的圖片我們能分析到實(shí)際上在iOS上操作圖形圖像的framework還是挺多麻汰,因?yàn)榇蟛糠秩硕际窃趹?yīng)用而不是游戲,我們跟游戲相關(guān)的框架(如Sprite慧妄、Metal坎穿、Scene)我們先暫時(shí)忽略掉展父!
首先我們來(lái)看看跟圖形圖像極度關(guān)聯(lián)的結(jié)構(gòu)圖:
iOS圖形返劲、圖像.jpg
圖片上的結(jié)構(gòu)雖然有些不完美,但是我們可大致看出iOS開(kāi)發(fā)中的技術(shù)栖茉。
iOS
- CoreGraphics.framework
- Quartz 2D
- Quartz Servies
- QuartzCore
- UIKit.framework
特別說(shuō)明:平常某些人口頭上會(huì)說(shuō)“Quartz框架”篮绿,其實(shí)大部分都是指Quartz 2D,所以建議大家盡量說(shuō)清楚吕漂,要么Core Graphics亲配,要么QuartCore,以免誤解惶凝。
硬件加速
硬件加速是指用到了GPU的API吼虎,以下這些情況不會(huì)用到硬件加速
- 所有在drawRect中完成的圖形繪制
- shouldRasterize屬性為YES的CALayer
- 用到了mask或drop shadow的CALayer
- Text(包括UILabel、CATextLayer苍鲜、Core Text等)
- 使用CGContext繪制的圖形
UITableViewCell優(yōu)化
參閱:Limboy博客