SDWebImage簡(jiǎn)單的實(shí)現(xiàn)原理

一、SDWebImage 實(shí)現(xiàn)原理:

1、首先讓占位圖先顯示。

2、SDWebImageManage交給 SDImageCache 先從內(nèi)存中查找是否有圖片,會(huì)以URL作為數(shù)據(jù)的索引在內(nèi)存中查找是否有對(duì)應(yīng)的緩存。

3、如果有緩存,通過(guò)代理進(jìn)行回調(diào)展示圖片。

4、如果內(nèi)存緩存中沒(méi)有找到,生成 NSInvocationOperation 添加到隊(duì)列,會(huì)通過(guò)MD5處理過(guò)的key來(lái)硬盤(pán)中查詢是否有圖片。

5、如果找到了,就把硬盤(pán)中的數(shù)據(jù)加載到內(nèi)存中并顯示。

6、如果沒(méi)有找到,會(huì)生成一個(gè)下載器向遠(yuǎn)程服務(wù)器發(fā)出請(qǐng)求開(kāi)始下載圖片。

7、圖片下載由NSURLConnection 來(lái)做,實(shí)現(xiàn)相關(guān)delegate來(lái)判斷圖片下載中、下載完成和下載失敗。

8、下載后的圖片會(huì)被保存到內(nèi)存和硬盤(pán)。

9、進(jìn)行界面展示。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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