史上最精简Glide解析(一)
来源:互联网 发布:软件开发项目规划 编辑:程序博客网 时间:2024/05/14 23:25
史上最精简Glide解析(一)
一、简介
Glide,一个被google所推荐的图片加载库,作者是bumptech。这个库被广泛运用在google的开源项目中,包括2014年的google I/O大会上发布的官方app。(PS:总所周知的简介就到此为止了)
Glide 对于 Android SDK 的最低要求是 API level 10
Glide滑行的意思,可以看出这个库的主旨就在于让图片加载变的流畅。现在被广泛使用,当然还是有很多开发者使用Square公司的picasso,也有两个库的对比。
参考文章:
http://www.jianshu.com/p/7ce7b02988a4?utm_campaign=haruki&utm_content=note&utm_medium=reader_share&utm_source=qq
原文链接:http://inthecheesefactory.com/blog/get-to-know-glide-recommended-by-google/en
二、使用
1、导入依赖: compile 'com.github.bumptech.glide:glide:3.7.0'
2、使用方法以及介绍
Glide.with(context)//上下文 .load(url)//地址,包括网络和本地 .placeholder(R.drawable.place_image)//图片加载出来前,显示的图片 .error(R.drawable.error_image)//图片加载失败后,显示的图片 .thumbnail(0.2f)//缩略图,显示的图片的原图的0.2倍 //与第一种方式不同的是,这里的第一个缩略图请求是完全独立于第二个原始请求的。该缩略图可以是不同的资源图片,同时也可以对缩略图做不同的转换 .thumbnail(thumbnailRequest) .crossFade()//强制开启glide默认的淡出淡入动画,3.7.0默认开启 .crossFade(3000)//设置开启动画的时间int duration,示例中是设置为3000ms .dontAnimate()//关闭glide的动画 .animate(animator)//初次加载图片的时候的动画 .override(20, 20)//图片的大小与裁剪,重新改变图片的大小,单位是px .centerCrop()//将图片按比例缩放到足矣填充 ImageView 的尺寸,但是图片可能会显示不完整 .fitCenter()//则是图片缩放到小于等于 ImageView 的尺寸,这样图片是显示完整了,但是 ImageView 就可能不会填满了 .skipMemoryCache(true)//true为忽略缓存,glide是默认做了内存缓存的 .diskCacheStrategy(DiskCacheStrategy.NONE)//禁止磁盘缓存,SOURCE 只缓存全尺寸图 ,RESULT 只缓存最终的加载图,ALL 缓存所有版本图(默认行为) .priority(Priority.HIGH)//图片请求的优先级,Priority.LOW,Priority.NORMAL,Priority.HIGH,Priority.IMMEDIAT .asGif()//当URL为gif并且加上改属性就会加载为gif,若URL不是gif就会调用error(), .asBitmap()//当你想把gif显示为静态图片时可以添加该属性,此时仅仅是显示gif的第一帧图片 .load(Uri.fromFile(new File(filePath)))//filePath是一个本地视频的路径,所以glide可以加载本地视频,仅仅是本地的啊 .into(imageView);//显示图片的目标
三、后记
本文是自己总结的,希望达到的效果就是简单明了的学会的glide的所有属性,看源码的请去官网。
有什么不合适的地方请大家提议。
我会抽空把进阶篇写完的。
阅读全文
0 0
- 史上最精简Glide解析(一)
- Glide源码解析之山清水秀疑无路(一)
- Glide源码解析篇之框架主体结构(一)
- Glide-入门(一)
- Glide 源码解析(一) 加载流程
- Glide解析
- Glide使用详解(一)
- Glide使用详解(一)
- Glide原理分析(一)
- Glide使用详解(一)
- Glide简单使用(一)
- Glide进阶详解(一)
- Glide使用详解(一)
- Glide使用详解(一)
- Glide使用详解(一)
- Glide使用详解(一)
- Glide使用详解(一)
- Glide使用详解(一)
- hdu4857
- Coursera Algorithms Programming Assignment 2: Deque and Randomized Queue
- iOS 实现类似弹出窗口
- PAT (Advanced Level) Practise 1039 Course List for Student (25)
- 实现一个栈Stack,要求实现Push(出栈)、Pop(入栈)、Min(返回最小值的操作)的时间复杂度为O(1)
- 史上最精简Glide解析(一)
- 最新大学英语四级词汇表 A
- ASCII码对照表
- SSM框架——详细整合教程(Spring+SpringMVC+MyBatis)
- JNI中java类型与C/C++类型对应关系
- USB数据传输方式
- sympy 解方程
- [Android] 在Ubuntu 12.04 (64bit)上使用搭建Android的调试环境:ADB USB Connection By not-root
- 【neutron】OpenStack Neutron -- 学习资料