图片加载的第三方库Glide与Picasso
来源:互联网 发布:看图王软件下载 编辑:程序博客网 时间:2024/05/17 01:51
两者的使用很相似,但是也有很大的区别:
首先:
Glide加载的图片没有Picasso那么平滑
Picasso的内存开销远大于Glide,Picasso是加载了全尺寸的图片到内存,然后让GPU来实时重绘大小。而Glide加载的大小和ImageView的大小是一致的,因此更小,虽然内存开销差距不大,但是在这个问题上Glide完胜Picasso。因为Glide可以自动计算出任意情况下的ImageView大小。
Picasso和Glide在磁盘缓存策略上有很大的不同。Picasso缓存的是全尺寸的,而Glide缓存的是跟ImageView尺寸相同的
尝试将ImageView调整成不同大小,但不管大小如何Picasso只缓存一个全尺寸的。Glide则不同,它会为每种大小的ImageView缓存一次。尽管一张图片已经缓存了一次,但是假如你要在另外一个地方再次以不同尺寸显示,需要重新下载,调整成新尺寸的大小,然后将这个尺寸的也缓存起来
Glide的这种方式优点是加载显示非常快。而Picasso的方式则因为需要在显示之前重新调整大小而导致一些延迟,即便你添加了这段代码来让
对我而言,我更喜欢Glide,因为它远比Picasso快,虽然需要更大的空间来缓存
库的大小Picasso (v2.5.1)的大小约118kb,而Glide (v3.5.2)的大小约430kb。
使用方法:
Glide.with(this)
.load(“http://nuuneoi.com/uploads/source/playstore/cover.jpg“)
.diskCacheStrategy(DiskCacheStrategy.ALL)
.into(ivImgGlide);
// Picasso
.resize(300, 200);
// Glide
.override(300, 200);
Center Cropping
// Picasso
.centerCrop();
// Glide
.centerCrop();
Transforming
// Picasso
.transform(new CircleTransform())
// Glide
.transform(new CircleTransform(context))
设置占位图或者加载错误图:
// Picasso
.placeholder(R.drawable.placeholder)
.error(R.drawable.imagenotfound)
// Glide
.placeholder(R.drawable.placeholder)
.error(R.drawable.imagenotfound)
总结:
Glide和Picasso都是非常完美的库。Glide加载图像以及磁盘缓存的方式都要优于Picasso,速度更快,并且Glide更有利于减少OutOfMemoryError的发生,GIF动画是Glide的杀手锏。不过Picasso的图片质量更高。你更喜欢哪个呢?
虽然我使用了很长事件的Picasso,但是我得承认现在我更喜欢Glide。我的建议是使用Glide,但是将Bitmap格式换成 ARGB_8888、让Glide缓存同时缓存全尺寸和改变尺寸两种。
其实我是抄来的:http://blog.csdn.net/qq_35166847/article/details/51814409 别打我- 图片加载的第三方库Glide与Picasso
- Google推荐的图片加载库Glide与Picasso介
- Picasso和Glide的图片加载与缓存
- 兔子--Picasso与Glide加载图片
- Google推荐的图片加载库Glide于Picasso比较
- Google推荐的图片加载库Glide于Picasso比较
- Picasso 和 Glide 图片加载库的介绍
- Android图片加载库Glide和Picasso的区别
- 图片加载的框架 Imageloader Picasso Glide
- Google推荐的图片加载库Glide介绍以及与picasso区别
- Google推荐的图片加载库Glide介绍(与Picasso比较)一
- Google推荐的图片加载库Glide介绍(与Picasso比较)
- Android:图片加载库Glide VS Picasso
- Android图片加载库Picasso和Glide
- android 开发中常用的第三方库(图片加载篇——Glide)
- picasso和Glide加载图片
- 关于图片加载神器--Glide与Picasso的使用与比较
- 强大的图片加载框架Picasso和Glide
- PHP开发 php-cgi not found
- time 函数
- BOOST库 之 智能指针的类型转换 (基类 与 子类之间智能指针的转换)(未完成)
- 路由器上网设置
- hadoop配置
- 图片加载的第三方库Glide与Picasso
- C++学习(60)
- JavaScript 错误与调试
- Caffe fine-tuning 微调网络
- 程序的时间复杂度计算
- gitbash客户端使用ssh连接github
- JFinal+Hessian调用远程服务
- 栈
- Configuration--typeAliases(三-2)