Glide和Picasso的区别
首先簡單的介紹下兩個(gè)庫的出身:
Picasso是Square公司出品的一款非常優(yōu)秀的開源圖片加載庫
Glide是由Google開發(fā),基于 Picasso,依然有保存了Picasso的簡潔風(fēng)格,但是在此做了大量優(yōu)化與改進(jìn)。
具體的使用方法這里就不詳細(xì)介紹了,這里重點(diǎn)說區(qū)別,主要體現(xiàn)在下面幾個(gè)方面:
1. 庫的大小和方法的數(shù)量
Glide 要比 Picasso 大很多,基本上是 Picasso 的3.5倍
2. 緩存方式
Glide 默認(rèn)的 Bitmap 格式是 RGB_565 格式,而Picasso默認(rèn)的是 ARGB_8888 格式,這個(gè)內(nèi)存開銷要小一半。
在磁盤緩存方面,Picasso只會(huì)緩存原始尺寸的圖片,而 Glide 緩存的是多種規(guī)格,也就意味著 Glide會(huì)根據(jù)你ImageView的大小來緩存相應(yīng)大小的圖片尺寸,比如你ImageView大小是200*200,原圖是 400*400,而使用Glide 就會(huì)緩存 200*200規(guī)格的圖,而Picasso只會(huì)緩存 400*400 規(guī)格的。這個(gè)改進(jìn)就會(huì)導(dǎo)致 Glide 比 Picasso 加載的速度要快
3. 加載圖片速度
當(dāng)內(nèi)存中不存在時(shí),Picasso會(huì)比Glide快一點(diǎn),可能的原因是緩存機(jī)制導(dǎo)致,因?yàn)镻icasso是直接把圖加載到內(nèi)存中,而Glid 則需要改變圖片大小再加載到內(nèi)存中去,這個(gè)應(yīng)該是會(huì)耗費(fèi)一定的時(shí)間。
但是,當(dāng)加載的圖片在內(nèi)存中時(shí),Glide 則比 Picasso 要快。其原理還是因?yàn)榫彺鏅C(jī)制的區(qū)別,因?yàn)镻icasso 從內(nèi)存中拿到的圖片,還要先去 resize 后,然后設(shè)定給 imageView,但是 Glide 則不需要這樣。
4. 生命周期
Glide 相比 Picasso 的一大優(yōu)勢是它可以和 Activity 以及 Fragment 的生命周期相互協(xié)作,我們在調(diào)用 Glide.with() 函數(shù)時(shí)可以將 Activity 或者 Fragment 的實(shí)例傳進(jìn)去,這樣 Glide 就會(huì)自動(dòng)將圖片加載等操作和組件的生命周期關(guān)聯(lián)起來。
5. Glide可以加載視頻縮略圖
6. Glide 支持 GIF動(dòng)態(tài)圖
---------------------
作者:孤獨(dú)的冥王星
來源:CSDN
原文:https://blog.csdn.net/zyw0101/article/details/80385494
版權(quán)聲明:本文為博主原創(chuàng)文章,轉(zhuǎn)載請附上博文鏈接!
轉(zhuǎn)載于:https://www.cnblogs.com/wytiger/p/10642154.html
總結(jié)
以上是生活随笔為你收集整理的Glide和Picasso的区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 聚合函数和分组查询
- 下一篇: 报错:org.apache.hadoop