滑翔是Android一个快速,高效的开源的媒体管理和图像加载框架,封装媒体解码,内存和磁盘高速缓存和资源池成一个简单,易于使用的界面。
滑翔支持取,解码和显示视频剧照,图片和GIF动画。滑翔包括一个灵活的API,允许开发人员插入到几乎所有的网络协议栈。默认情况下滑翔使用自定义的HttpUrlConnection
基于堆栈,而且还包括工具库插入到谷歌的排球项目或广场的OkHttp库,而不是。
格莱德的主要重点是使滚动任何类型的图像,流畅,快速地名单,但滑行也是有效的差不多,你需要获取,调整大小和显示远程图像的任何情况。
下载
您可以从GitHub的一个罐子发布页面。
或者用摇篮:
库 { mavenCentral()// jcenter()的作品,以及因为它是从中央Maven的拉 } 依赖 { 编译“ com.github.bumptech.glide:滑翔:3.7.0 ” 编译“ com.android.support:support-v4:19.1.0 ' }
或Maven:
< 依赖 > < 的groupId > com.github.bumptech.glide </ 的groupId > < artifactId的 >下滑</ artifactId的 > < 版本 > 3.7.0 </ 版 > </ 依赖 > < 依赖 > < 的groupId > com.google.android </ 的groupId > < artifactId的 >支持-V4 </ artifactId的 > < 版本 > R7 </ 版 > </ 依赖 >
有关使用最前沿的信息,请参阅快照维基页面。
ProGuard的
根据您的ProGuard(DexGuard)的配置和使用情况,您可能需要在您的proguard.cfg以下行(请参阅配置维基的更多细节):
-保持公共类*实现com.bumptech.glide.module.GlideModule -保持公共枚举com.bumptech.glide.load.resource.bitmap.ImageHeaderParser $ ** { ** [] $ VALUES ; 公众* ; } - keepresourcexmlelements清单/应用/元-数据@值= GlideModule
如何使用滑翔?
结帐的GitHub的维基上各种主题的网页,看的javadoc。
简单的用例将是这个样子:
//对于一个简单的观点: @ 覆盖 公共 无效的onCreate(捆绑 savedInstanceState){ ... ImageView的 ImageView的=(ImageView的)findViewById(ř 。 ID 。 my_image_view); 滑行。用(这个)。负载(“ http://goo.gl/gEgYUd ”)。到(ImageView的); } //对于一个简单的图像列表: @ 覆盖 公共 查看 getView(INT位置,查看回收,一个ViewGroup容器){ 最后 ImageView的 myImageView; 如果(回收== 空){ myImageView =(ImageView的)吹气。膨胀(ř 。布局。 my_image_view,集装箱,假); } 其他 { myImageView =(ImageView的)循环使用; } 字符串的URL = myUrls 。得到(位置); 滑行 。随着(myFragment) .load(URL) .centerCrop() .placeholder(ř 。绘制。 loading_spinner) .crossFade() .into(myImageView); 返回 myImageView; }
状态
第3版的3.0
分支是在谷歌,包括在Android相机应用,并在2014年谷歌IO应用在多个开源项目使用一个稳定的公开发行。第4版,目前正在对开发master
分支。
评论/错误/问题/拉请求随时欢迎!请阅读CONTRIBUTING.md关于如何报告的问题。
兼容性
- Android SDK中:滑翔要求10的最低API级别。
- OkHttp 2.X:有叫可用可选依赖
okhttp-integration
,请参阅集成库维基页面。 - OkHttp 3.X:有叫可用可选依赖
okhttp3-integration
,请参阅集成库维基页面。 - 乱射:有叫可用可选依赖
volley-integration
,请参阅集成库维基页面。 - 圆形图片:
CircleImageView
/CircularImageView
/RoundedImageView
已知有问题,用TransitionDrawable
(.crossFade()
带.thumbnail()
或.placeholder()
)和GIF动画,使用BitmapTransformation
(.circleCrop()
将在第4版可用)或.dontAnimate()
来解决该问题。 - 巨大的图片(地图,连环画):滑翔可以通过下采样加载它们庞大的图像,但不支持缩放和平移
ImageView
参考译文]他们需要特殊的资源优化(如平铺)无劳动OutOfMemoryError
秒。
建立
建筑用滑翔的gradle是相当直截了当:
混帐克隆git@github.com:bumptech / glide.git #使用https://github.com/bumptech/glide.git如果“权限被拒绝” CD滑行 git的子模块初始化&& git的子模块更新 ./gradlew罐子
注:请确保您的Android SDK有Android的支持库安装,并且您的$ANDROID_HOME
环境变量是在SDK指向或添加local.properties
在一个根项目文件sdk.dir=...
行。
样本
按照中的步骤生成部分设置项目,然后:
./gradlew:样品:Flickr的:运行 ./gradlew:样品:giphy:运行 ./gradlew:样品:SVG:运行
你也可以发现预编译的APK 版本页面。
发展
按照中的步骤生成部分设置的项目,然后按照自己的喜好编辑文件。 IntelliJ IDEA的14干净进口两种滑翔的来源和测试,并与滑翔工作的推荐方式。
要打开的IntelliJ IDEA项目:
- 转到文件菜单或欢迎屏幕
- 点击打开...
- 导航到滑翔的根目录。
- 选择
build.gradle
资源均来自第三方,谨慎下载,前往第三方网站下载