厚街手機(jī)網(wǎng)站建設(shè)平臺(tái)關(guān)鍵詞排名優(yōu)化
文章目錄
- 1. 概念介紹
- 2. 使用方法
- 2.1 基本用法
- 2.2 緩沖原理
- 3. 示例代碼
- 4. 內(nèi)容總結(jié)
我們?cè)谏弦徽禄刂薪榻B了"FadeInImage組件"相關(guān)的內(nèi)容,本章回中將介紹CachedNetworkImage組件.閑話休提,讓我們一起Talk Flutter吧。
1. 概念介紹
我們?cè)诒菊禄刂薪榻B的CachedNetworkImage組件主要用來緩沖和顯示網(wǎng)絡(luò)圖片,這點(diǎn)從它的名字上就可以看出來,該組件可以確保圖像能夠快速、高效地加載,同時(shí)
又可以避免不必要的網(wǎng)絡(luò)請(qǐng)求和資源浪費(fèi)。該組件由cached_network_image這個(gè)三方包提供,它和官方提供的FadeInImage組件在功能上十分相似。我們本章回中
將詳細(xì)介紹它的使用方法。
2. 使用方法
2.1 基本用法
和其它組件類似,CachedNetworkImage組件提供了相關(guān)的屬性來控制自己,下面是該組件中常用的屬性:
- imageUrl:該屬性主要用來控制被加載的網(wǎng)絡(luò)圖片,它的值是一個(gè)圖片網(wǎng)址;
- imageBuilder:該屬性主要用來裝飾被加載的圖片,比如對(duì)圖片進(jìn)行縮放操作;
- errorWidget:該屬性主要用來控制顯示的錯(cuò)誤提示圖標(biāo)或者文字;
- placeholder:該屬性用來控制在加載網(wǎng)絡(luò)圖片之前顯示的占位圖片資源;
- fit:該屬性主要用來控制圖片如何適應(yīng)其父容器,這個(gè)是圖片類組件中最常用的屬性;
- progressIndicatorBuilder:該屬性用來顯示圖標(biāo)加載進(jìn)度,它是方法類型,進(jìn)度值在方法參數(shù)中;
2.2 緩沖原理
CachedNetworkImage組件背后的緩沖原理是自己開發(fā),它基于FlutterCacheManager組件實(shí)現(xiàn)。這兩個(gè)組件都是一個(gè)名叫BaseFlow的組織(公司)提供。該組件的
緩沖原理:第一次運(yùn)行時(shí)從網(wǎng)絡(luò)下載圖像,并將其緩存到本地。當(dāng)下一次需要加載同一圖像時(shí),它會(huì)首先檢查緩存中是否存在,如果存在,則直接從緩存中讀取,這樣就避
免了重復(fù)的網(wǎng)絡(luò)請(qǐng)求和下載。我們?cè)诤竺嬲禄刂袑iT介紹FlutterCacheManager組件。
3. 示例代碼