目录

加载图片

占位图

指定图片格式

指定图片大小


加载图片

Glide.with(this).load(url).into(imageView);

调用Glide.with()方法用于创建一个加载图片的实例。with()方法可以接收Context、Activity、Fragment类型的参数,选择范围广,with()方法中传入的实例会决定Glide加载图片的生命周期,如果传入的是Activity或者Fragment的实例,那么当这个Activity或Fragment被销毁的时候,图片也会停止;如果传入的是ApplicationContext,那么只有当应用程序被杀掉的时候,图片加载才会停止。

调用.load()方法用于指定待加载的图片资源。Glide支持加载各种各样的图片资源,包括网络图片、本地图片、应用资源、二进制流、URL对象等,因此load()方法也有很多个方法重载:

// 加载本地图片
File file = new File(getExternalCacheDir() + "/image.jpg");
Glide.with(this).load(file).into(imageView);// 加载应用资源
int resource = R.drawable.image;
Glide.with(this).load(resource).into(imageView);// 加载二进制流
byte[] image = getImageBytes();
Glide.with(this).load(image).into(imageView);// 加载Uri对象
Uri imageUri = getImageUri();
Glide.with(this).load(imageUri).into(imageView);

占位图

Glide占位图功能的使用方法:

Glide.with(this).load(url).placeholder(R.drawable.loading).into(imageView);

Glide异常占位图功能的使用方法:

Glide.with(this).load(url).placeholder(R.drawable.loading).error(R.drawable.error).diskCacheStrategy(DiskCacheStrategy.NONE).into(imageView);

指定图片格式

Glide只允许加载静态图片代码,加入一个asBitmap()方法:

Glide.with(this).load(url).asBitmap().placeholder(R.drawable.loading).error(R.drawable.error).diskCacheStrategy(DiskCacheStrategy.NONE).into(imageView);

Glide强制指定加载动态图片,调用了asGif():

Glide.with(this).load(url).asGif().placeholder(R.drawable.loading).error(R.drawable.error).diskCacheStrategy(DiskCacheStrategy.NONE).into(imageView);

指定图片大小

常见的加载图片造成的内存浪费:例如一张图片的尺寸是1000*1000像素,但是ImageView只有200*200像素,如果不对图片进行任何压缩就直接读取到内存中,这就属于内存浪费。

而使用Glide,就完全不用担心图片内存浪费,甚至是内存溢出的问题。Glide从来都不会直接将图片的完整尺寸全部加载到内存中,而是用多少加载多少。Glide会自动判断ImageView的大小,然后只将图片像素大小加载到内存当中,帮助节省内存开支。

绝大多数情况下都不需要指定图片大小,Glide会自动根据ImageView的大小来决定图片的大小。

不过有需要也可以给图片指定一个固定的大小:

Glide.with(this).load(url).placeholder(R.drawable.loading).error(R.drawable.error).diskCacheStrategy(DiskCacheStrategy.NONE).override(100, 100).into(imageView);

如上面使用override()方法指定了一个图片的尺寸。

Glide的基本用法相关推荐

  1. Android图片加载框架最全解析(八),带你全面了解Glide 4的用法

    本文转载自郭神的Glide分析系列:http://blog.csdn.net/guolin_blog/article/details/78582548 本文同步发表于我的微信公众号,扫一扫文章底部的二 ...

  2. Android图片加载框架 Glide 4 的用法

    转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/78582548 本文同步发表于我的微信公众号,扫一扫文章底部的二维码或在微信搜索 郭 ...

  3. 你真的会使用Glide吗?——Glide的高级用法

    今天给大家分享一下Glide的一些使用技巧.Glide应该是Android APP中使用最为广泛的图片加载框架了,如丝般的顺滑滚动以及方便的链式调用为广大开发者所喜爱.但是开发中,我们总能遇上一些不太 ...

  4. Android Glide图片加载框架(一)基本用法

    文章目录 一.前言 二.简介 三.基本用法 第一步:调用 Glide.with() 方法创建加载图片的实例 第二步:调用 load() 方法指定待加载的图片资源 第三步:调用 into() 方法绑定显 ...

  5. android 获取图片bitmap对象,Android中Glide获取图片Path、Bitmap用法详解

    脚本之家在此之前给大家介绍过图片加载框架Glide的基本用法介绍,大家可以先参考一下,本篇内容更加深入的分析了Glide获取图片Path.Bitmap用法,以及实现的代码分析. 1. 获取Bitmap ...

  6. Android图片加载框架之(Glide和Picasso的区别,Glide的简单使用)

    Glide,一个被google所推荐的图片加载库,常见的还有Picasso,Fresco等,每一个都非常稳定,功能也都十分强大.但是它们的使用场景基本都是重合的,也就是说我们基本只需要选择其中一个来进 ...

  7. Android Glide图片加载框架(二)源码解析之with()

    文章目录 一.前言 二.如何阅读源码 三.源码解析 1.with() Android Glide图片加载框架系列文章 Android Glide图片加载框架(一)基本用法 Android Glide图 ...

  8. Android 系统(263)---Glide框架

    Glide框架 1.简介 2.Glide的基本使用 3.Glide的高级用法(仅列举几个) 3.1.RequestOptions(请求选项) 3.2.TransitionOptions(过渡选项) 3 ...

  9. Android图片处理Glide 4 介绍

    本篇将是我们这个Glide系列的最后一篇文章. 其实在写这个系列第一篇文章的时候,Glide就推出4.0.0的RC版了.那个时候因为我一直研究的都是Glide 3.7.0版本,再加上RC版本还不太稳定 ...

最新文章

  1. 入门单片机选择51还是stm32?入门单片机有哪些好的教学视频?
  2. 省市区三级联动 数据精确到乡镇一级
  3. tsf php,TSF:腾讯推出的 PHP 协程方案
  4. 关于谷歌自动换行的奇异效果
  5. SAP 物料XXXXX的强制帐户设置 (输入帐户设置类别) 的问题解决方法
  6. 1.封装WinMain至动态链接库
  7. 1.13 编程基础之综合应用_14求满足条件的3位数 python
  8. 全局路径规划:图搜索算法介绍6(A star)Matlab算法实现
  9. 解读中国杰出CFO之道
  10. 统一对比学习框架?没错它来了。
  11. linux下源码安装log4cxx
  12. Atitit webservice的发现机制 discover机制
  13. 华为U2000网管研究实录 (3) - 运行分析(服务端进程)
  14. C语言中对程序设计的理解,浅论《C语言程序设计》的学习方法
  15. 单片机c语言开发实验心得,单片机实训心得报告【三篇】
  16. Open-DrainPush-Pull
  17. 计算机网络素质拓展心得体会范文,计算机网络培训心得体会范文(通用4篇)...
  18. 计算机网络设备的种类,计算机网络设备选型依据.ppt
  19. flume-异常Closing file:log.xxxtmp failed. Will retry again in 180 seconds
  20. mse python_MSE与MAE的区别与选择

热门文章

  1. mysql 5.0.8 下载_mysql-connector-
  2. Xcode 打包到蒲公英
  3. linux 下 `dirname $0`
  4. 计算机更改开机密码快捷方法,如何对电脑的开机密码进行快速更换
  5. granger Z-score问题
  6. python制作辅助和易语言的区别_为什么多数外挂都用易语言?
  7. android 实现QQ好友列表
  8. Alpine介绍与apk的基本使用
  9. C初阶必写的C语言小游戏—扫雷,一看就会,看完就能写
  10. 获取二维数组的长度和宽度