现在是开发空档期,没了解过这些对于我来说还是新的图片加载库,准备一个一个的来看下。
附上Glide的git地址:点击打开链接
博主使用的gradle依赖:
引入方法如下:
repositories { mavenCentral() // jcenter() works as well because it pulls from Maven Central } dependencies { compile 'com.github.bumptech.glide:glide:3.7.0' compile 'com.android.support:support-v4:19.1.0' }
出于打生产包会混淆导致某些异常,请在你的混淆文件 proguard.cfg 中添加:
-keep public class * implements com.bumptech.glide.module.GlideModule -keep public enum com.bumptech.glide.load.resource.bitmap.ImageHeaderParser$** { **[] $VALUES; public *; } # for DexGuard only -keepresourcexmlelements manifest/application/meta-data@value=GlideModule
使用方法举例:
Glide .with(myFragment) .load(url) .centerCrop() .placeholder(R.drawable.loading_spinner) .crossFade() .into(myImageView);
优点:Glide的with方法可以接受 Context Activity Fragment FragmentActivity,如果传入的参数非Context,图片加载就会和Activity/Fragment的生命周期保持一致,在Paused的时候暂停加载,在Resumed的时候又自动重新加载。
兼容性:只能支持API10以上
与Picasso的对比:
1.内存开销比较小(默认RGB565),但是清晰度不高,在颜色变化区域有锯齿状
2.磁盘缓存的是与控件相同大小的图片,不是全尺寸
3.可以加载GIF动画