package com.longfei.admin.imageloder_text;
import android.app.application;
import android.graphics.bitmap;
import android.os.environment;
import com.nostra13.universalimageloader.cache.disc.impl.unlimiteddisccache;
import com.nostra13.universalimageloader.cache.disc.naming.md5filenamegenerator;
import com.nostra13.universalimageloader.cache.memory.impl.usingfreqlimitedmemorycache;
import com.nostra13.universalimageloader.core.displayimageoptions;
import com.nostra13.universalimageloader.core.imageloader;
import com.nostra13.universalimageloader.core.imageloaderconfiguration;
import com.nostra13.universalimageloader.core.assist.imagescaletype;
import com.nostra13.universalimageloader.core.assist.queueprocessingtype;
import com.nostra13.universalimageloader.core.display.fadeinbitmapdisplayer;
import com.nostra13.universalimageloader.core.display.roundedbitmapdisplayer;
import com.nostra13.universalimageloader.core.download.baseimagedownloader;
import java.io.file;
/**
* created by admin on 2016/4/9.
*/
public class imageloading extends application {
@override
public void oncreate() {
// todo auto-generated method stub
super.oncreate();
imageloaderconfiguration config = new imageloaderconfiguration.builder(
this)
.memorycacheextraoptions(480, 800)
// max width, max height,即保存的每个缓存文件的最大长宽
.disccacheextraoptions(480, 800, null)
// can slow imageloader, use it carefully (better don't use
// it)/设置缓存的详细信息,最好不要设置这个
.threadpoolsize(3)
// 线程池内加载的数量
.threadpriority(thread.norm_priority - 2)
.denycacheimagemultiplesizesinmemory()
.memorycache(new usingfreqlimitedmemorycache(2 * 1024 * 1024))
// you can pass your own memory cache
// implementation/你可以通过自己的内存缓存实现
.memorycachesize(2 * 1024 * 1024)
.disccachesize(50 * 1024 * 1024)
.disccachefilenamegenerator(new md5filenamegenerator())
// 将保存的时候的uri名称用md5 加密
.tasksprocessingorder(queueprocessingtype.lifo)
.disccachefilecount(100)
// 缓存的文件数量
.disccache(
new unlimiteddisccache(new file(environment
.getexternalstoragedirectory()
+ "/myapp/imgcache")))
// 自定义缓存路径
.defaultdisplayimageoptions(getdisplayoptions())
.imagedownloader(
new baseimagedownloader(this, 5 * 1000, 30 * 1000))
.writedebuglogs() // remove for release app
.build();// 开始构建
imageloader.getinstance().init(config);
}
private displayimageoptions getdisplayoptions() {
displayimageoptions options;
options = new displayimageoptions.builder()
.showimageonloading(r.drawable.ic_launcher) // 设置图片在下载期间显示的图片
.showimageforemptyuri(r.drawable.ic_launcher)// 设置图片uri为空或是错误的时候显示的图片
.showimageonfail(r.drawable.ic_launcher) // 设置图片加载/解码过程中错误时候显示的图片
.cacheinmemory(true)// 设置下载的图片是否缓存在内存中
.cacheondisc(true)// 设置下载的图片是否缓存在sd卡中
.considerexifparams(true) // 是否考虑jpeg图像exif参数(旋转,翻转)
.imagescaletype(imagescaletype.exactly_stretched)// 设置图片以如何的编码方式显示
.bitmapconfig(bitmap.config.rgb_565)// 设置图片的解码类型//
// .delaybeforeloading(int delayinmillis)//int
// delayinmillis为你设置的下载前的延迟时间
// 设置图片加入缓存前,对bitmap进行设置
// .preprocessor(bitmapprocessor preprocessor)
.resetviewbeforeloading(true)// 设置图片在下载前是否重置,复位
.displayer(new roundedbitmapdisplayer(20))// 是否设置为圆角,弧度为多少
.displayer(new fadeinbitmapdisplayer(100))// 是否图片加载好后渐入的动画时间
.build();// 构建完成
return options;
}
}
package com.longfei.admin.imageloder_text;
import android.app.activity;
import android.graphics.bitmap;
import android.os.bundle;
import android.util.log;
import android.view.view;
import android.widget.imageview;
import com.nostra13.universalimageloader.core.imageloader;
import com.nostra13.universalimageloader.core.assist.failreason;
import com.nostra13.universalimageloader.core.listener.imageloadinglistener;
/**
* 1、 universal-imageloader的配置
*
* 2、用universal-imageloader加载网络图片和本地图片
*
* @author administrator
*/
public class mainactivity extends activity {
private imageloader loader;
private imageview iv_img;
@override
protected void oncreate(bundle savedinstancestate) {
super.oncreate(savedinstancestate);
setcontentview(r.layout.activity_main);
loader=imageloader.getinstance();//实例化imageloder
iv_img=(imageview)findviewbyid(r.id.iv_img);
string url="file:///"+"加载本地图片";
//加载网络图片,第一个参数为路径
// loader.displayimage("http://static.oschina.net/uploads/user/494/988131_100.jpg?t=1419303093000",iv_img);
loader.displayimage("http://static.oschina.net/uploads/user/494/988131_100.jpg?t=1419303093000", iv_img, new imageloadinglistener() {
@override
public void onloadingstarted(string s, view view) {
log.i("info","加载开始");
}
@override
public void onloadingfailed(string s, view view, failreason failreason) {
log.i("info","加载失败");
}
@override
public void onloadingcomplete(string s, view view, bitmap bitmap) {
log.i("info","加载完毕");
}
@override
public void onloadingcancelled(string s, view view) {
log.i("info","加载取消");
}
});
}
}