今天主要研究了Glide获取图片Path、Bitmap用法,相信也困扰了大家很久,我在网上也找了很久,基本没有,后来研究了下,也参考了下api文档,总结了以下几个方式:

1. 获取Bitmap:

1)在图片下载缓存好之后获取

Glide.with(mContext).load(url).asBitmap().into(new SimpleTarget<Bitmap>() {
@Override
public void onResourceReady(Bitmap resource, GlideAnimation<? super Bitmap> glideAnimation) {
image.setImageBitmap(resource);
}
}); //方法中设置asBitmap可以设置回调类型

上面是简单方法,下面有全面的方法,可以完美控制:

Glide.with(mContext).load(url).asBitmap().into(new Target<Bitmap>() {
@Override
public void onLoadStarted(Drawable placeholder) { } @Override
public void onLoadFailed(Exception e, Drawable errorDrawable) { } @Override
public void onResourceReady(Bitmap resource, GlideAnimation<? super Bitmap> glideAnimation) {
//TODO set bitmap
} @Override
public void onLoadCleared(Drawable placeholder) { } @Override
public void getSize(SizeReadyCallback cb) { } @Override
public void setRequest(Request request) { } @Override
public Request getRequest() {
return null;
} @Override
public void onStart() { } @Override
public void onStop() { } @Override
public void onDestroy() { }
});

2)通过url获取

Bitmap myBitmap = Glide.with(applicationContext)
.load(yourUrl)
.asBitmap() //必须
.centerCrop()
.into(, )
.get()

2. 获取图片缓存路径

FutureTarget<File> future = Glide.with(mContext)
.load("url")
.downloadOnly(, );
try {
File cacheFile = future.get();
String path = cacheFile.getAbsolutePath();
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
}

注意:这段代码需要在线程中执行,否则会保存。

最新文章

  1. 2016 华南师大ACM校赛 SCNUCPC 非官方题解
  2. HashMap原理与优化
  3. Mysql日期统计函数简介
  4. oracle 大字段clob检索
  5. OC:属性的内部实现原理、dealloc内释放实例变量、便利构造器方法的实现原理、collection的内存管理
  6. [视频监控]用状态机图展示Layout切换关系
  7. Mybatis插入语句useGeneratedKeys=&quot;true&quot;的用法
  8. MySQL数据库my.cnf配置文件注释详解
  9. AspectJ的安装和Eclipse的AJDT插件的配置
  10. C++拷贝构造函数详解
  11. iOS开发——闪光灯
  12. Oracle RAC学习笔记01-集群理论
  13. java字串加密
  14. SUSE12Sp3安装配置.net core 生产环境(1)-IP,DNS,网关,SSH,GIT
  15. React Native——react-navigation的使用
  16. 【原创】大叔问题定位分享(13)HBase Region频繁下线
  17. sql语句order by排序问题
  18. JVM之垃圾收集器与内存分配回收策略(二)
  19. 通过Solr所提供的Dataimporthandler实现数据源的导入
  20. vector底层实现

热门文章

  1. MongoDB怎么快速的删除数据库数据?
  2. node.js 核心http模块,起一个服务器,返回一个页面
  3. ajax多文件上传,js原生ajax请求(转)
  4. CentOS6.5 64位站点压力測试工具webbench
  5. 从hbase读取数据优化策略和实验对照结果
  6. HDU 4499 Cannon (暴力搜索)
  7. 在Ubuntu平台上创建Cordova Camera HTML5应用
  8. 【Cocos2dx游戏开发】Cocos2d-x简介
  9. 还在自建Redis缓存?那你就out了
  10. Cant&#39;t call setState(or forceUpdate) on an unmount component. 报错的可能性原因