Glide-圖片請求優(yōu)先級(request-priorities)

寫在前面:這篇文章原著是Norman Peitek,所有著作權歸原作者所有盼铁,我只是在學習Glide的時候看到有間書的作者 weiyf 寫了雙語的翻譯,覺得非常好尝偎,但是作者只寫了幾篇饶火,估計是比較忙吧。于是我就去看原博了致扯,發(fā)現(xiàn)原博的英文也不會很難懂肤寝,這里只是方便學習做了翻譯(順便學英語(逃),建議英文基礎還可以的同學直接看原文:https://futurestud.io/tutorials/glide-request-priorities

前幾篇傳送門:

原文傳送門:


正文:

上一周鲤看,我們講了圖片加載的一個關鍵:緩存! 如果你還沒有看過耍群,那么值得翻回去看看义桂。本周,我們將了解Glide的另一個重要特性:按照優(yōu)先級依次請求圖片蹈垢。

Prioritizing Image Requests:設置圖片請求優(yōu)先級

你經(jīng)常會遇到這樣的情況慷吊,你的app需要同時加載許多圖片。我們假設有這樣一個詳情頁面:頁面上方有一張關鍵的大圖和兩張稍小一些的圖曹抬,頁面底部還有一些不那么重要的圖片溉瓶。 對于一個良好用戶體驗來說,上方的關鍵大圖應該是最先被加載并顯示的谤民,然后再到底部那么不那么重要的ImageView堰酿。Glide通過.priority()方法結合Priority的枚舉值即可按照你想要的優(yōu)先級來加載圖片。

但是在我們講例子如何使用這個方法之前张足,我們先來看看這些枚舉值触创,它們是作為.priority()的參數(shù)傳入的。

Getting to know the Priority enum:優(yōu)先級的枚舉值

這些枚舉總共有四種为牍,優(yōu)先級按照順序依次遞增:

  • Priority.LOW
  • Priority.NORMAL
  • Priority.HIGH
  • Priority.IMMEDIATE

在我們看例子之前嗅榕,你要明白這些優(yōu)先級并不是非常嚴格執(zhí)行的。 Glide會將它們作為一個參考吵聪,在請求的時候盡量滿足,并不保證所有的圖片都會按照順序來請求兼雄。

但是吟逝,如果你確定某些圖片非常重要,那么可以好好利用這個特性赦肋!

例子: Hero Element with Child Images

我們回到剛才提到的例子:你要實現(xiàn)這么一個詳情頁面:頂部有關鍵的圖片块攒,底部有一些小圖励稳。最佳的用戶體驗應該是:頂部的圖片最先加載出來。 因此囱井,我們給它設置Priority.HIGH優(yōu)先級驹尼。理論上,這么做已經(jīng)足夠了庞呕。但是為了讓這例子更有趣新翎,我們讓底部的圖片都以.priority(Priority.LOW)優(yōu)先級加載:

private void loadImageWithHighPriority() {  
    Glide
        .with( context )
        .load( UsageExampleListViewAdapter.eatFoodyImages[0] )
        .priority( Priority.HIGH )
        .into( imageViewHero );
}

private void loadImagesWithLowPriority() {  
    Glide
        .with( context )
        .load( UsageExampleListViewAdapter.eatFoodyImages[1] )
        .priority( Priority.LOW )
        .into( imageViewLowPrioLeft );

    Glide
        .with( context )
        .load( UsageExampleListViewAdapter.eatFoodyImages[2] )
        .priority( Priority.LOW )
        .into( imageViewLowPrioRight );
}

如果你運行這個例子,你會發(fā)現(xiàn)幾乎每次都是頂部的圖先加載出來住练,盡管它比較大(那樣它需要更長時間來加載)地啰。

Outlook:展望

Glide提供了非常方便的方法來設置圖片的優(yōu)先級。這是一個快速讲逛、簡單提高一些用戶體驗的的方法亏吝。看看你的app和你的代碼盏混,是否能運用到你剛學到的技巧吧蔚鸥!

按優(yōu)先級請求通常來說非常有效,但不能解決所有的問題许赃。假設你要下載一張非常大的圖片止喷,如論你設置了什么優(yōu)先級,下載和處理都要花費一定的時間图焰。
下一周启盛,為了更好地提升用戶體驗,我們將介紹另一個Glide外的工具:thumbnails技羔!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末僵闯,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子藤滥,更是在濱河造成了極大的恐慌鳖粟,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,968評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件拙绊,死亡現(xiàn)場離奇詭異向图,居然都是意外死亡,警方通過查閱死者的電腦和手機标沪,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,601評論 2 382
  • 文/潘曉璐 我一進店門榄攀,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人金句,你說我怎么就攤上這事檩赢。” “怎么了违寞?”我有些...
    開封第一講書人閱讀 153,220評論 0 344
  • 文/不壞的土叔 我叫張陵贞瞒,是天一觀的道長偶房。 經(jīng)常有香客問我,道長军浆,這世上最難降的妖魔是什么棕洋? 我笑而不...
    開封第一講書人閱讀 55,416評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮乒融,結果婚禮上掰盘,老公的妹妹穿的比我還像新娘。我一直安慰自己簇抵,他們只是感情好庆杜,可當我...
    茶點故事閱讀 64,425評論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著碟摆,像睡著了一般晃财。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上典蜕,一...
    開封第一講書人閱讀 49,144評論 1 285
  • 那天断盛,我揣著相機與錄音,去河邊找鬼愉舔。 笑死钢猛,一個胖子當著我的面吹牛,可吹牛的內容都是我干的轩缤。 我是一名探鬼主播命迈,決...
    沈念sama閱讀 38,432評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼火的!你這毒婦竟也來了壶愤?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,088評論 0 261
  • 序言:老撾萬榮一對情侶失蹤馏鹤,失蹤者是張志新(化名)和其女友劉穎征椒,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體湃累,經(jīng)...
    沈念sama閱讀 43,586評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡勃救,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,028評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了治力。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蒙秒。...
    茶點故事閱讀 38,137評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖宵统,靈堂內的尸體忽然破棺而出税肪,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 33,783評論 4 324
  • 正文 年R本政府宣布益兄,位于F島的核電站,受9級特大地震影響箭券,放射性物質發(fā)生泄漏净捅。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,343評論 3 307
  • 文/蒙蒙 一辩块、第九天 我趴在偏房一處隱蔽的房頂上張望蛔六。 院中可真熱鬧,春花似錦废亭、人聲如沸国章。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽液兽。三九已至,卻和暖如春掌动,著一層夾襖步出監(jiān)牢的瞬間四啰,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評論 1 262
  • 我被黑心中介騙來泰國打工粗恢, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留柑晒,地道東北人。 一個月前我還...
    沈念sama閱讀 45,595評論 2 355
  • 正文 我出身青樓眷射,卻偏偏與公主長得像匙赞,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子妖碉,可洞房花燭夜當晚...
    茶點故事閱讀 42,901評論 2 345

推薦閱讀更多精彩內容