不是教程,自己学的一点东西记录 下来。
虽然可以自己写,但是有库更省劲儿。
库:Glide,Github链接。
用法:
导入依赖
implementation 'com.github.bumptech.glide:glide:4.13.2'
annotationProcessor 'com.github.bumptech.glide:compiler:4.13.2'
使用方式:先findImageView,再用库提供的简短的代码即可,简单方便。
private ImageView iv_title
String ImageUrl = "http:\\xx.xx.png";
iv_title = findViewById(R.id.IV_title);
Gilde.with(this) //with方法支持传入Context,Activity,Fragment,View等
.load(ImageUrl) //load就是加载图片的地址了
.into(iv_title); //into顾名思义就是把图片控件资源设置为自己网址的图片
此外,load
方法也提供了强大的支持,Uri、文件、btye[]、网络连接、资源id、bitmap、drawable都可以加载。
题外:此体外转载简书:作者:MrTrying
占位符
Glide提供了三种不同类型的占位符:
- placeholer(占位符)
- error(错误符)
- fallback(后备回调符)
GlideApp.with(this) .load(url) .placeholder(R.mipmap.placeholder) .error(R.mipmap.error) .fallback(R.mipmap.fallback) .into(imageView);
先说API的参数,
placeholder
、error
、fallback
相同可以传入资源id或者Drawable对象。接下来说说这三个占位符的调用时机,用过V3的同学一定知道
placeholer
占位符是当资源正在请求是被展示的图片或者资源文件,当请求成功时占位符会被替换成请求到得资源;error
则是在请求永久性失败是展示;fallback
是当请求的url(或者model)为null
时展示,此占位符的目的是设置null
是否是可接收的正常情况,而Glide将null
作为错误处理。三个占位符对应了三种时机,其中还有一些状态,无可避免的会出现一些复杂的情况需要说明:
- 设置了
placeholder
之后,如果请求失败,但是没有设置error
,那么占位符将继续显示;而请求的url/model为null也会导致请求失败,一样的,没有设置error
和fallback
的话,占位符也将继续显示 - 如果请求的url/model为null导致请求失败,
fallback
会优先于error
调用,也就是说url为null时设置了error
而没有设置fallback
将继续显示error
;反之,设置了fallback
就会显示fallback