Glide4-入门教程-3-加载本地图片(Uri, File, resourceId等)

作者: android 发布时间: 2018-02-08 浏览: 30266 次 编辑

目录:


一、简介

    与其他图片加载库相同,Glide除了可以加载网络图片之外,也可以加载本地图片。甚至还可以从各种各样奇葩的数据源中加载图片。本文将介绍Glide4 加载网络图片,本地图片,资源文件里的图片的使用方法。

二、加载网络图片

    这个在前面已经讲过了,只放一段代码,就不多说明了

ImageView imageView = findViewById(R.id.image_view);
String url = "https://www.niwoxuexi.com/statics/images/nougat_bg.png";
Glide.with(context)
        .load(url)
        .into(imageView);

三、加载本地图片

    glide记载本地图片也是很简单,也是通过 .load() 来实现的,下面看一下 .load() 加载各种资源

注意:加载SD卡的图片AndroidManifest.xml 中要添加读取SD卡的权限

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

如果是运行在Android 6.0 以上的手机上,还要在代码中动态的申请读取SD卡的权限(我这里就不多讲了,大家可以自行从网上查找)

1, 加载SD卡资源图片

// 加载SD卡根目录的test.jpg 图片 
String path = "file://"+ Environment.getExternalStorageDirectory().getPath()+"/test.jpg";
Glide.with(context)
        .load(path)
        .into(imageView);

或者

ImageView imageView = findViewById(R.id.image_view);
// 加载SD卡根目录的test.jpg 图片  ,通过Flie文件读取
File file = new File(Environment.getExternalStorageDirectory(), "test.jpg");
Glide.with(context)
        .load(file)
        .into(imageView);

2,加载drawable资源图片

方法:load(R.drawable.image_test)

ImageView imageView = findViewById(R.id.image_view);
// 加载资源文件 drawable 下的图片 image_test.png
Glide.with(this)
        .load(R.drawable.iamge_test)
        .into(imageView);

3, 加载assets 资源文件

方法:load("file:///android_asset/image_test.png")

ImageView imageView = findViewById(R.id.image_view);
// 加载资源文件 assets 下的图片 image_test.png
String path =  "file:///android_asset/image_test.png";
Glide.with(this)
        .load(path)
        .into(imageView);

4,加载raw资源图片

方法:load("android.resource://包名/raw/raw_1") 或  load("android.resource://包名/raw/"+R.raw.raw_1)

这个我就不上代码了,大家米葫芦画瓢吧


5,当然load 并不局限在上面几种类型,还可以加载下面的参数,我就不举例说明了,有兴趣的大家自行百度学习

参数说明
.load(String string)string可以为一个文件路径、uri或者url
.load(Uri uri)uri类型
.load(File file)文件
.load(Integer resourceId)资源Id,R.drawable.xxx或者R.mipmap.xxx
.load(byte[] model)byte[]类型
.load(T model)自定义类型

三、下篇文章学习 glide 加载 gif图片