1.动态的GIF图片加载:
Glide.with(context).load(...).asBitmap() //显示gif静态图片
Glide.with(context).load(...).asGif() //显示gif动态图片
2.本地视频快照:
Glide现在还可以把视频解码为一张图片:
Glide.with(context).load(“视频路径“)
(经过我的测试,只能把手机本地的mp4视频解析为一张图片,把mp4文件放在raw文件中,不能解析)
3.对缩略图的支持:
//加载yourView1/10尺寸的缩略图,然后加载全图
Glide.with(yourFragment).load(yourUrl).thumbnail(0.1f).into(yourView)
4.生命周期集成
同时将Activity/Fragment作为with()参数的好处是:图片加载会和Activity/Fragment的生命周期保持一致,
- 请求会在onStop的时候自动暂停,
- 在onStart的时候重新启动,gif的动画也会在onStop的时候停止,以免在后台消耗电量,
5.转码
Glide的.toBytes()和.transcode()方法允许在后台获取、解码和转换一个图片,你可以将一张图片转换成更多有用的图片格式,比如,上传一张250*250的图片
Glide.with(context)
.load(“/user/profile/photo/path”)
.asBitmap()
.toBytes()
.centerCrop()
.into(new SimpleTarget<byte[]>(250, 250) {
@Override
public void onResourceReady(byte[] data, GlideAnimation anim) {
// Post your bytes to a background thread and upload them here.
}
});
6.动画:3.x加入了cross fades和View的属性动画的支持
比如
(.animate(ViewPropertyAnimation.Animator)),
7. 网络模块可以选择OkHttp或者Volley的支持
You can now choose to use either OkHttp, or Volley, or Glide’s HttpUrlConnection default as your network stack.
Volley和OkHttp可以在gradle文件当中添加依赖,注册相应的ModelLoaderFactory