安卓开发中,接触到的图片加载框架有两种 Glide 和 Picasso.
准备工作:
要有一个安卓工程
设置访问权限:
<uses-permission android:name="android.permission.INTERNET"/>
Glide图片加载使用:
String url = ""; //选择加载图片的地址 Glide.with(context).load(url ) .diskCacheStrategy(DiskCacheStrategy.ALL) .placeholder(R.drawable.donkey) .error(R.drawable.donkey) .into(viewHolder.icon);
方法:
load() : 加载图片 可以加载网络图片,本地图片,二进制流,加载工程应用资源
placeholder() : 占位图,图片未加载出来的时候如何显示
error() : 显示异常占位图,遇到特殊情况,如网络异常,图片找不到,会显示error 中的占位图
into(): 绑定安卓控件。
diskCacheStrategy(): 缓存策略
ps:Glide 可以自动识别静态图片,还有GIF,如果想禁用图片,使用加上asBitMap() 方法即可。
Picasso 图片加载框架使用:
//使用Picasso 请求图片 Picasso.with(context).load(mediaItem.getImageUrl()) .placeholder(R.drawable.donkey) .error(R.drawable.donkey) .into(viewHolder.icon);
ps: 这些方法和Glide 差不多。
Glide 和 Picaso 的区别:
Glide 支持GIF 。其他对比参见:https://www.jianshu.com/p/fc72001dc18d