框架--------异步下载图片(避免OOM)

一、简介

异步下载图片,图片保存在内存和SD卡中。

优点:简洁,用起来方便。

二、地址和支持的版本

下载地址:https://github.com/thest1/LazyList

再贴个地址:http://download.csdn.net/detail/mwj_88/7964883

支持版本:2.0+

三、用法

定义一个ImageLoader实例,然后调用其DisplayImage()即可,最后记得清除缓存。

[java] view plaincopy

  1. ImageLoader imageLoader=new ImageLoader(context);
  2. ...
  3. imageLoader.DisplayImage(url, imageView);

[java] view plaincopy

  1. imageLoader.clearCache();

网络权限和读取SD卡权限:

[java] view plaincopy

  1. <uses-permission android:name="android.permission.INTERNET"/>
  2. <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

注意:一个项目中仅创建一个ImageLoader实例,这样的图像缓存将更有效。

时间: 2025-01-02 16:57:35

框架--------异步下载图片(避免OOM)的相关文章

swift详解之十四 -----------NSThread 异步下载图片

NSThread 异步下载图片 在IOS中处理多线程有三个方案 , NSThread .NSOperation .GCD .当然GCD应该是最方便的 ,我们一个一个学 .先理解底层的,最后再使用最方便的 . NSThread: 优点:NSThread 比其他两个轻量级 缺点:需要自己管理线程的生命周期,线程同步.线程同步对数据的加锁会有一定的系统开销 我们先研究下用NSThread 异步加载网络图片 : NSThread有两种创建方式 ,一种是通过实例方法.一种是通过类方法. let threa

异步下载图片的综合应用

1.要解决的问题. 给单元格设置从网络上下载的图片. 2.思路: >1.先同步下载 bug:下载是一个耗时操作,会阻塞主线程 >2.异步下载图片 bug:图片发生错行. >从网络上请求下来的图片与单元格不匹配.为什么会这样?根本原因是因为重用单元格. 如图所示. tableView上有3个单元格.每个单元格有图片,文字.文字是通过plist加载,当向上滚动单元格,让,单元格1滚出界面,那么就会加载第4个单元格,第四个单元格仍然是新创建的,因为当单元格1尚未滚出视图,单元格4已经出来一部分

Android异步下载图片并且缓存图片到本地

在Android开发中我们经常有这样的需求,从服务器上下载xml或者JSON类型的数据,其中包括一些图片资源,本demo模拟了这个需求,从网络上加载XML资源,其中包括图片,我们要做的解析XML里面的数据,并且把图片缓存到本地一个cache目录里面,并且用一个自定义的Adapter去填充到LIstView,demo运行效果见下图: 通过这个demo,要学会有一下几点 1.怎么解析一个XML 2.demo中用到的缓存图片到本地一个临时目录的思想是怎样的? 3.AsyncTask类的使用,因为要去异

安卓AsyncTask异步下载图片

package com.example.day7_practise; import java.io.IOException;import java.net.HttpURLConnection;import java.net.MalformedURLException;import java.net.URL;import android.app.Activity;import android.app.ProgressDialog;import android.graphics.Bitmap;imp

UI_18 图片异步下载、KVO

一.异步下载图片ImageViewDownloader 图?下载是iOS开发中常?的功能,但系统并未提供图?下载类. 为了便于后续使?,可以将图?下载封装到?个类?? (ImageDownloader) 新建SingleViewApplication,使用默认的Storyboard,向其中添加一个Button一个ImageView并关联属性.添加事件.点击Button实现异步下载并显示图片.AsynImageDownloader类封装了下载图片的方法. 使用代理进行AsynImageDownlo

Android异步批量下载图片并缓存

前言 本文引自:http://www.xycoding.com/articles/2014/07/29/android-async-images-download/,作者不详 ImagesDownLoad源码下载:DEMO 接触android开发不久,近段时间需实现一个批量下载图片并显示的小功能.在网上搜索了一圈,发现国内外网上异步加载的例子太多太杂,要么是加载大图decode时报OOM异常,要么内存急剧上升不稳定.所以在前辈们的基础上,做了一些优化,特共享出来,欢迎大家指正.这里主要参见了以下

Android开发之异步获取并下载网络资源-下载图片和下载文本内容

在android网络开发过程中,经常需要获取网络资源,比如下载图片,下载文本文件内容等,这个时候就需要http请求来获取相应的网络资源.首先看看实例效果图:              下载图片截图                                                                                                下载文本文件内容截图 下面介绍如何来实现这样的开发: (1)从指定的URL获取对应的流 既然要获取网络资源,那么

异步下载照片墙

android异步下载照片墙 版权声明:本文出自ShengFQ的博客. 转载请注明出处:http://www.jianshu.com/p/1709ea24ebbb 我的问题 我要实现从服务器端下载一个图片地址列表,并异步下载图片展示在imageview,实现缓存和压缩.如果要下载压缩后的图片,应该是由服务器端先压缩后存储,这里只说客户端范围,不做讨论. 需要预备的知识点: 1.AsyncTask异步调用方法下载json数据 2.listview,viewadapter的高性能写法 3.Handl

UI13-异步下载图片

1 使用封装好的工具类,进行加载数据,存在数组中,加载好后重新刷新表内容.异步下载图片. 2.在model类中,使用方法对图片的网址进行解析,讲自己的image的地址,转化为image图片/ 在cell加载的时候调用. 3.在加载cell中图片的时候,如果图片为空,且不是正在加载中,调用model的方法进行对m的image赋值,此时注册观察者,当image的值发生改变时 触发观察者方法,此时已经有值可以对cell进行赋值:::如果图片有值,直接对cell进行赋值. 4.触发的观察者方法,找到新改