Imageloarder
首先需要加载jar包,和在配置文件中配置
Mainactivity.java
package com.baidu.day13_2imageloader; import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.assist.FailReason;
import com.nostra13.universalimageloader.core.listener.ImageLoadingListener; import android.os.Bundle;
import android.app.Activity;
import android.graphics.Bitmap;
import android.view.Menu;
import android.view.View;
import android.widget.ImageView; public class MainActivity extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
String uri="http://a0.att.hudong.com/15/08/300218769736132194086202411_950.jpg";
//加载xml文件
setContentView(R.layout.activity_main);
//找到所需控件
ImageView iv=(ImageView) findViewById(R.id.image);
//通过网络加载图片
ImageLoader.getInstance().displayImage(uri, iv, 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) {
// TODO Auto-generated method stub } @Override
public void onLoadingCancelled(String arg0, View arg1) {
// TODO Auto-generated method stub }
});
}
}
Application
package com.baidu.day13_2imageloader; import java.io.File;
import com.nostra13.universalimageloader.cache.disc.impl.UnlimitedDiscCache;
import com.nostra13.universalimageloader.cache.disc.naming.Md5FileNameGenerator;
import com.nostra13.universalimageloader.cache.memory.impl.LruMemoryCache;
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.RoundedBitmapDisplayer; import android.app.Application;
import android.os.Environment; public class MyImageLoader extends Application { // 重写方法
@Override
public void onCreate() {
// TODO Auto-generated method stub
super.onCreate();
String sdpath = Environment.getDownloadCacheDirectory().getPath();
ImageLoaderConfiguration ilc = new ImageLoaderConfiguration.Builder(
this)
// 缓存文件的最大长宽
.memoryCacheExtraOptions(200, 300)
// 本地缓存的详细信息
.diskCacheExtraOptions(100, 200, null)
// 线程池内加载的数量
.threadPoolSize(3)
// 任务处理的顺序
.tasksProcessingOrder(QueueProcessingType.FIFO)
// 设置内存缓存大小
.memoryCache(new LruMemoryCache(2 * 1024 * 1024))
// 设置缓存路径
.diskCache(
new UnlimitedDiscCache(new File(sdpath + "1407A/image")))
// 不使用默认的
.defaultDisplayImageOptions(getoptions())
// 设置加密模式
.diskCacheFileNameGenerator(new Md5FileNameGenerator())
.writeDebugLogs().build();
// 初始化
ImageLoader.getInstance().init(ilc);
} public static DisplayImageOptions getoptions() {
// 自定义配置信息
DisplayImageOptions dio = new DisplayImageOptions.Builder()
// 图片下载期间现实的图片
.showImageOnLoading(R.drawable.ic_launcher)
// 图片为空,发省错误显示的图片
.showImageForEmptyUri(R.drawable.ic_launcher)
// 图片解码构成中发生的错误
.showImageOnFail(R.drawable.ic_launcher)
// 图片加载前是否重置。复位
.resetViewBeforeLoading(false)
// 下载前的延迟时间
.delayBeforeLoading(3000)
// 下载图片是否报存内存卡
.cacheInMemory(false)
// 下载图片是否缓存在sd卡
.cacheOnDisk(false)
// 设置图片的显示比例
.imageScaleType(ImageScaleType.IN_SAMPLE_POWER_OF_2)
// 设置图片的圆角半径
.displayer(new RoundedBitmapDisplayer(175))
// 设置图片的透明度
// .displayer(new FadeInBitmapDisplayer(3000))
.build(); return dio;
}
}
Imageloarder的更多相关文章
随机推荐
- Appium-001-测试开发环境搭建(Android - Win7)
随着移动端 App 测试自动化的兴起,为更好的控制产品质量,越来越多的中大型公司开始了移动端的自动化测试.Appium 自动化测试技术也是我很早之前就想学习的一门技术,却一直没有比较空余的时间来学习( ...
- JMeter学习-001-JMeter初识
Apache JMeter是Apache组织开发的基于Java的开源压力测试工具(个人发现也可用于接口测试).用于对软件做压力测试,它最初被设计用于Web应用测试但后来扩展到其他测试领域. 它可以用于 ...
- apache 根据端口访问配置
1. http.conf 中 需要加上 listen 8080 然后 开启 Include conf/extra/httpd-vhosts.conf http.conf 是项目的主配置文件 ,引 ...
- thinkphp 加载静态框架frameset frame 浏览器显示空白
我觉得静态框架这个东西非常奇怪,可能是因为没有研究透它. 我的情况是这样的,我之前做过的一个面向对象没有基于thinkPHP,的项目中用同一套后台静态框架没有问题,但用thinkphp后台的index ...
- LeetCode Closest Binary Search Tree Value II
原题链接在这里:https://leetcode.com/problems/closest-binary-search-tree-value-ii/ 题目: Given a non-empty bin ...
- Spring中的@response和@request注解
@response 标注对象返回的格式为json文本 @requestBody将json对象转换为对应的java类
- robot framework数据库操作
1.连接数据库 2.数据库查询操作 3.断开数据库连接 4.对数据库进行读取,实现登录功能实例
- ucenter 通信成功后 apps.php无误后 该做的事
比如你的系统有个登陆功能,在本系统登陆之前要先执行如下代码,先把apps.php里的所有站点先登陆一遍 <meta charset="utf8"> <?php i ...
- 网站购物,使用pickle
主程序, #!/usr/bin/env python #_*_ coding:utf- _*_ import pickle import os import sys import time impor ...
- GPU 优化总结
前面说了对我这一年多的工作进行一个总结,由于工作比较紧,加上本人比较懒,一直没能抽出时间来写,最近稍微闲下来了.先写一篇GPU优化的,后续的文章希望能慢慢补齐.这些基本都是我个人优化的实际经验,也参考 ...