Glide高级加载
2016-06-17 12:08
211 查看
在这篇文章中,将要介绍Glide如何从Android资源、文件和Uri中获取图片并加载。
虽然,你可以直接在ImageView的属性里添加这一资源。但是,如果你使用Glide这种更高级的方式进行动态转换,你的应用可以做得非常有趣。
下面一个小的工具函数可以将资源id转换为一个Uri:
当然,Uri并不一定是从资源id中创建,它可以是任意Uri
菜鸟妹纸,写的垃圾,勿喷!
从Res资源中加载
首先介绍从Android资源中加载。不同于上一节的String类型的网络URL,这里是一个Int型的的资源id。int resourceId = R.mipmap.ic_launcher; Glide .with(this) .load(resourceId) .into(imageViewResource);
虽然,你可以直接在ImageView的属性里添加这一资源。但是,如果你使用Glide这种更高级的方式进行动态转换,你的应用可以做得非常有趣。
从文件中加载
从资源文件加载,通常是固定的,当你让用户任意选择一张图片来显示的时候,这个文件的路径并非是开发人员预先设定的,从图片文件中加载对于实际应用将会非常有用。需要传递的参数也仅仅是一个文件对象.举个栗子(不能吃哦):
File file = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES), "Running.jpg"); Glide .with(context) .load(file) .into(imageViewFile);
从Uri加载
最后介绍从Uri中加载图片,这里的请求跟上面的方法并无太大差异,直接看代码:// 这个可以是任何Uri. 这里为了演示,我们只创建了一个指向桌面图标的Uri Uri uri = resourceIdToUri(this, R.mipmap.friends_sends_pictures_select_icon_selected); Glide .with(this) .load(uri) .into(imageViewUri);
下面一个小的工具函数可以将资源id转换为一个Uri:
public static final String ANDROID_RESOURCE = "android.resource://"; public static final String FOREWARD_SLASH = "/"; private static Uri resourceIdToUri(Context context, int resourceId) { return Uri.parse(ANDROID_RESOURCE + context.getPackageName() + FOREWARD_SLASH + resourceId); }
当然,Uri并不一定是从资源id中创建,它可以是任意Uri
菜鸟妹纸,写的垃圾,勿喷!
相关文章推荐
- equals和==
- 【Hihocoder】1014 : Trie树
- 编写高性能JavaScript【转】
- Activity生命周期,数据传递,启动模式详解
- Angular2 中的依赖注入
- 程序员的恶性循环
- 每日一linux命令(15)-------tail
- Android事件的分发机制详解
- Android开发之为textView添加下划线,中划线等
- 切实解决socket连接掉线检测
- 紧跟时代精华的段子
- Spring 攻略第004讲
- [黑金原创教程] FPGA那些事儿《设计篇 I》- 图像处理前夕
- c++ 的vector
- [OpenStack]Server status values
- iframe中使用jquery进行查找的方法【案例分析】
- 如何在开发项目里进行自我激励
- nginx反向代理及负载均衡(服务器负载,以后看)
- DHTML-----表格的创建和样式
- C#开发微信门户及应用(42)--使用Autofac实现微信接口处理的控制反转处理