Android学习Android开发Android开发经验谈

Glide的使用&GlideAPP怎么来的

2017-10-09  本文已影响873人  代码打志bin

1.Glide的优势和劣势or为什么选Glide

Glide优势
Glide劣势
其他框架劣势

2.Glide 4.0+的使用

1)在module的build.gradle中添加依赖
repositories {
  mavenCentral()
  maven { url 'https://maven.google.com' }
}

dependencies {
  compile 'com.github.bumptech.glide:glide:4.2.0'
  annotationProcessor 'com.github.bumptech.glide:compiler:4.2.0'
}
2)使用GlideApp

在Glide4.0之前使用Glide只需要

 Glide.with(this)
         .load(url)
         .placeholder(R.mipmap.ic_launcher)
         .into(iv);

但是在Glide4.0之后load(url)之后就不能调用.placeholder()等方法
查看4.0+的文档发现需要通过GlideApp来调用一系列方法

GlideApp生成的方法:
①新建一个类继承AppGlideModule
②类添加GlideModule
③Make Module

import com.bumptech.glide.annotation.GlideModule;
import com.bumptech.glide.module.AppGlideModule;

@GlideModule
public final class MyAppGlideModule extends AppGlideModule
{
      //可以配置Glide
}

现在就可以使用GlideApp了

GlideApp.with(this)
                .load(url)//资源路径
                .placeholder(R.mipmap.ic_launcher)//占位图
                .error(R.mipmap.ic_launcher)//加载失败
                .into(iv);

注意:需要添加网络权限!

3.Glide 4.0+图片转换

在开发中,图片经常要做一些变化,比如剪裁指定形状,圆角(可以使用CircleImageView),这边推荐一个Glide的图片转换库
https://github.com/wasabeef/glide-transformations
实现圆角效果如下:


还有一些变化,可以试试

小坑

添加了占位图.placeholder(R.mipmap.ic_launcher)
如果ImageView设置了warp_content占位图会影响加载图的大小
所以,ImageView最好设置固定大小

上一篇 下一篇

猜你喜欢

热点阅读