ImageLoader加载网络图片
2018-09-04 本文已影响4人
五月笑忘
导入方法
- 下载jar包并手动导入:
implementation files('libs/universal-image-loader-1.9.5.jar')
- 在build.gradle中添加
compile ‘com.nostra13.universalimageloader:universal-image-loader:1.9.5’
添加权限
需要添加写入权限以及联网权限,注意安卓6.0以后动态权限问题
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
初始化
// 初始化
ImageLoaderConfiguration configuration = new ImageLoaderConfiguration.Builder(this).writeDebugLogs().build();
ImageLoader.getInstance().init(configuration);
加载图片
// 先设置网上图片的路径
String uri = "";
// 可以设置图片大小
ImageSize mImageSize = new ImageSize(300, 300);
// 图片的相关配置
DisplayImageOptions mOptions = new DisplayImageOptions.Builder()
.cacheInMemory(true).cacheOnDisc(true)
.bitmapConfig(Bitmap.Config.RGB_565).build();
ImageLoader.getInstance().loadImage(uri, mImageSize, mOptions,
new ImageLoadingListener() {
@Override
public void onLoadingStarted(String arg0, View arg1) {
// TODO Auto-generated method stub
//图片开始加载状态
}
@Override
public void onLoadingFailed(String arg0, View arg1,
FailReason arg2) {
// TODO Auto-generated method stub
//图片加载失败后回调,可以在这设置图片加载失败后的默认图等
}
@Override
public void onLoadingComplete(String arg0, View arg1,
Bitmap arg2) {
ivPersonLogo.setImageBitmap(arg2);
//图片加载完成,arg2即为加载出的图片,以bitmap形式存在
}
@Override
public void onLoadingCancelled(String arg0, View arg1) {
// TODO Auto-generated method stub
//图片加载取消回调
}
});
}