IOS SDWebImage實現原理詳解,iossdwebimage

來源:互聯網
上載者:User

IOS SDWebImage實現原理詳解,iossdwebimage

 

在之前我寫過SDWebImage的使用方法,主要是用與擷取網狀圖片,沒有看過的朋友可以看看。

這篇文章將主要介紹SDWebImage的實現原理,主要針對於擷取網狀圖片的原理,如果沒有第三方我們該怎麼去做,當然我知識用文字去介紹,我想花大把的時間去深入理解我們用不到的東西,是很不值得的,不過興趣的朋友可以去其他部落格上尋找相應資訊,畢竟學無止境。好了下面開始進入正題。

1)當我門需要擷取網狀圖片的時候,我們首先需要的便是URl沒有URl什麼都沒有,獲得URL後我們SDWebImage實現的並不是直接去請求網路,而是檢查圖片緩衝中有沒有和URl相關的圖片,如果有則直接返回image,如果沒有則進行下一步。

2)當圖片緩衝中沒有圖片時,SDWebImage依舊不會直從網路上擷取,而是檢查沙箱中是否存在圖片,如果存在,則把沙箱中對應的圖片存進image緩衝中,然後按著第一步的判斷進行。

3)如果沙箱中也不存在,則顯示佔位圖,然後根據圖片的下載隊列緩衝判斷是否正在下載,如果下載則等待,避免二次下載。如果不存則建立下載隊列,下載完畢後將下載操作從隊列中清除,並且將image存入圖片緩衝中。

4)重新整理UI(當然根據實際情況操作)將image存入沙箱緩衝。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.