打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
图片异步加载框架 Android
图片异步加载框架 Android-Universal-Image-Loader
特点
多线程图片加载
尽可能多的配置选项(线程池,加载器,解析器,内存/磁盘缓存,显示参数等等)
图片可以缓存在内存中,或者设备文件目录下,或者SD卡中
可以监听加载进度
可以自定义显示每一张图片时都带不同参数
支持Widget
jar包下载
1.自定义XXXAppllication类,初始化ImageLoader
[java]  
public class XXXApplication extends Application {  
    @Override  
    public void onCreate() {  
        super.onCreate();  
        ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(getApplicationContext())  
            .denyCacheImageMultipleSizesInMemory()  
            .memoryCache(new LruMemoryCache(2 * 1024 * 1024))  
            .memoryCacheSize(2 * 1024 * 1024)  
            .discCacheSize(50 * 1024 * 1024)  
            .denyCacheImageMultipleSizesInMemory()    
            .discCacheFileNameGenerator(new Md5FileNameGenerator())    
            .tasksProcessingOrder(QueueProcessingType.LIFO)    
            .discCacheFileCount(100)  
            .writeDebugLogs()  
            .build();  
        ImageLoader.getInstance().init(config);  
    }  
}  
2.在AndroidManifest.xml文件的application标签里加入
[java]  
android:name=".XXXApplication"  
3.使用imageloader
[java] 
public class ImageManager{  
     public static void Load(String imgUrl,ImageView imageView){  
        ImageLoader.getInstance().displayImage(imgUrl, imageView);  
     }  
     public static void Load(String imgUrl,ImageView imageView,DisplayImageOptions o){  
         ImageLoader.getInstance().displayImage(imgUrl, imageView,o);  
     }  
}  
4.部分参数介绍
[java]  
     //设置图片在下载期间显示的图片  
     showStubImage(R.drawable.ic_launcher)  
     //设置图片Uri为空或是错误的时候显示的图片  
     showImageForEmptyUri(R.drawable.ic_empty)  
     //设置图片加载/解码过程中错误时候显示的图片  
     showImageOnFail(R.drawable.ic_error)  
     //设置图片在下载前是否重置,复位  
     resetViewBeforeLoading()  
     //设置下载的图片是否缓存在内存中  
     cacheInMemory()  
     //设置下载的图片是否缓存在SD卡中  
     cacheOnDisc()  
     //设置图片的解码类型  
     bitmapConfig(Bitmap.Config.RGB_565)  
     //设置图片的解码配置  
     decodingOptions(android.graphics.BitmapFactory.Options decodingOptions)  
     //设置图片下载前的延迟  
     delayBeforeLoading(int delayInMillis)  
     //设置额外的内容给ImageDownloader  
     extraForDownloader(Object extra)  
     //设置图片加入缓存前,对bitmap进行设置  
     preProcessor(BitmapProcessor preProcessor)  
     //设置显示前的图片,显示后这个图片一直保留在缓存中  
     postProcessor(BitmapProcessor postProcessor)  
     //设置图片以如何的编码方式显示  
     imageScaleType(ImageScaleType imageScaleType)  
/** 
 * 设置图片的显示方式 
 * @param displayer 
 */  
displayer(BitmapDisplayer displayer)  
displayer:  
          RoundedBitmapDisplayer(int roundPixels)设置圆角图片  
          FakeBitmapDisplayer()这个类什么都没做  
          FadeInBitmapDisplayer(int durationMillis)设置图片渐显的时间  
     SimpleBitmapDisplayer()正常显示一张图片    
/** 
 * 图片的缩放方式 
 * @param imageScaleType 
 */  
    imageScaleType(ImageScaleType imageScaleType)  
    imageScaleType:  
                   EXACTLY :图像将完全按比例缩小的目标大小  
                   EXACTLY_STRETCHED:图片会缩放到目标大小完全  
                   IN_SAMPLE_INT:图像将被二次采样的整数倍  
                   IN_SAMPLE_POWER_OF_2:图片将降低2倍,直到下一减少步骤,使图像更小的目标大小  
                   NONE:图片不会调整  
/** 
*DisplayImageOptions简单示例 
*/  
// 创建默认的DisplayImageOptions  
DisplayImageOptions option_0=DisplayImageOptions.createSimple();  
// 使用DisplayImageOptions.Builder()创建DisplayImageOptions  
DisplayImageOptions options = new DisplayImageOptions.Builder()    
    .imageScaleType(ImageScaleType.EXACTLY_STRETCHED)  
    .showStubImage(R.drawable.loading)    
    .showImageForEmptyUri(R.drawable.load_fail)    
    .showImageOnFail(R.drawable.load_fail)    
    .cacheInMemory(true)    
    .cacheOnDisc(true)      
    .build();   
5.最后别忘了权限
[java]  
<uses-permission android:name="andro
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
GitHub 排名前 100 的安卓、iOS项目简介
Android利用Volley异步加载数据(JSON和图片)完整示例
android 使用软引用异步加载图片
Android ListView图片异步加载显示
提升Android ListView性能的几个技巧
直接拿来用!10款实用Android UI工具
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服