ImageLoader加载图片
来源:互联网 发布:淘宝达人简历怎么写 编辑:程序博客网 时间:2024/06/02 06:10
先导universal-image-loader-1.9.3包
在application配置 android:name=".MyApplication"
intent权限
1 package com.ch.day13_imageloaderdemo; 2 3 import java.io.File; 4 5 import com.nostra13.universalimageloader.cache.disc.impl.UnlimitedDiscCache; 6 import com.nostra13.universalimageloader.cache.disc.naming.HashCodeFileNameGenerator; 7 import com.nostra13.universalimageloader.cache.disc.naming.Md5FileNameGenerator; 8 import com.nostra13.universalimageloader.cache.memory.impl.LruMemoryCache; 9 import com.nostra13.universalimageloader.core.DisplayImageOptions;10 import com.nostra13.universalimageloader.core.ImageLoader;11 import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;12 import com.nostra13.universalimageloader.core.assist.ImageScaleType;13 import com.nostra13.universalimageloader.core.assist.QueueProcessingType;14 import com.nostra13.universalimageloader.core.decode.BaseImageDecoder;15 import com.nostra13.universalimageloader.core.display.FadeInBitmapDisplayer;16 import com.nostra13.universalimageloader.core.display.RoundedBitmapDisplayer;17 import com.nostra13.universalimageloader.core.download.BaseImageDownloader;18 19 import android.app.Application;20 import android.graphics.Bitmap;21 import android.os.Environment;22 import android.util.Log;23 24 public class MyApplication extends Application{25 26 @Override27 public void onCreate() {28 // TODO Auto-generated method stub29 super.onCreate();30 Log.i("TAG", "自定义的application类调用了.....");31 //创建ImageLoader的默认配置32 // ImageLoaderConfiguration confing = ImageLoaderConfiguration.createDefault(this);33 //得到sdcard路径34 String sdpath = Environment.getExternalStorageDirectory().getPath();35 //自定义ImageLoaderConfiguration36 ImageLoaderConfiguration confing = new ImageLoaderConfiguration.Builder(this)37 .memoryCacheExtraOptions(480, 800)// default = device screen dimensions 内存缓存文件的最大长宽38 .diskCacheExtraOptions(480, 800, null)// 本地缓存的详细信息(缓存的最大长宽),最好不要设置这个 39 // .taskExecutor(null)40 // .taskExecutorForCachedImages(null)41 .threadPoolSize(3)// default 线程池内加载的数量42 .threadPriority(Thread.NORM_PRIORITY-2) // default 设置当前线程的优先级43 .tasksProcessingOrder(QueueProcessingType.FIFO)//任务的处理顺序44 .denyCacheImageMultipleSizesInMemory()45 .memoryCache(new LruMemoryCache(2 * 1024 * 1024))////设置自己的内存缓存大小 2m46 .memoryCacheSize(2 * 1024 * 1024)47 // .memoryCacheSizePercentage(13)48 .diskCache(new UnlimitedDiscCache(new File(sdpath+"/app1407a/imgcache")))//设置缓存的图片在sdcard中的存放位置49 .diskCacheSize(50 * 1024 * 1024)50 .diskCacheFileCount(100)51 .diskCacheFileNameGenerator(new Md5FileNameGenerator())//md5加密的方式,或new HashCodeFileNameGenerator()52 .imageDownloader(new BaseImageDownloader(this))53 // .imageDecoder(new BaseImageDecoder(true))54 .defaultDisplayImageOptions(null)//不适用默认的图片加载配置,使用自定义的55 .writeDebugLogs()56 .build();57 //初始化58 ImageLoader.getInstance().init(confing);59 }60 61 public static DisplayImageOptions getOptions(){62 //自定义加载图片的配置信息63 DisplayImageOptions option = new DisplayImageOptions.Builder()64 .showImageOnLoading(R.drawable.ic_launcher)// 设置图片下载期间显示的图片65 .showImageForEmptyUri(R.drawable.emptyurl) // 设置图片Uri为空或是错误的时候显示的图片66 .showImageOnFail(R.drawable.emptyurl)// 设置图片加载或解码过程中发生错误显示的图片67 .resetViewBeforeLoading(false)// default 设置图片在加载前是否重置、复位68 // .delayBeforeLoading(1000)// 下载前的延迟时间69 .cacheInMemory(true)// default 设置下载的图片是否缓存在内存中70 .cacheOnDisk(true)// default 设置下载的图片是否缓存在SD卡中71 .considerExifParams(false)72 .imageScaleType(ImageScaleType.IN_SAMPLE_POWER_OF_2)//设置图片的显示比例73 .bitmapConfig(Bitmap.Config.RGB_565)// default 设置图片的解码类型74 // .displayer(new RoundedBitmapDisplayer(75))//设置图片的圆角半径75 .displayer(new FadeInBitmapDisplayer(8000))//设置图片显示的透明度过程时间76 .build();77 78 return option;79 }80 81 }
1 package com.ch.day13_imageloaderdemo; 2 3 import com.nostra13.universalimageloader.core.ImageLoader; 4 import com.nostra13.universalimageloader.core.assist.FailReason; 5 import com.nostra13.universalimageloader.core.listener.ImageLoadingListener; 6 import com.nostra13.universalimageloader.core.listener.ImageLoadingProgressListener; 7 8 import android.os.Bundle; 9 import android.app.Activity;10 import android.app.ProgressDialog;11 import android.graphics.Bitmap;12 import android.util.Log;13 import android.view.Menu;14 import android.view.View;15 import android.widget.ImageView;16 17 public class MainActivity extends Activity {18 private ImageView img;19 String url = "http://photocdn.sohu.com/kis/fengmian/1193/1193693/1193693_ver_big.jpg";20 String url1 = "http://a0.att.hudong.com/15/08/300218769736132194086202411_950.jpg";21 @Override22 protected void onCreate(Bundle savedInstanceState) {23 super.onCreate(savedInstanceState);24 setContentView(R.layout.activity_main);25 26 init();27 }28 29 public void init(){30 img = (ImageView) findViewById(R.id.img);31 //通过ImageLoader加载网络图片,配置给img32 // ImageLoader.getInstance().displayImage(url, img);33 // ImageLoader.getInstance().displayImage(url, img, MyApplication.getOptions());34 // ImageLoader.getInstance().displayImage(url, img, MyApplication.getOptions(), new ImageLoadingListener() {35 // @Override36 // public void onLoadingStarted(String arg0, View arg1) {37 // }38 // @Override39 // public void onLoadingFailed(String arg0, View arg1, FailReason arg2) {40 // }41 // @Override42 // public void onLoadingComplete(String arg0, View arg1, Bitmap arg2) {43 // }44 // @Override45 // public void onLoadingCancelled(String arg0, View arg1) {46 // }47 // });48 final ProgressDialog pro = new ProgressDialog(this);49 pro.setMessage("努力加载中。。。");50 pro.setIcon(R.drawable.ic_launcher);51 pro.show();52 ImageLoader.getInstance().displayImage(url1, img, MyApplication.getOptions(), null, new ImageLoadingProgressListener() {53 54 @Override55 public void onProgressUpdate(String arg0, View arg1, int arg2, int arg3) {56 // TODO Auto-generated method stub57 Log.i("TAG", arg0+",,"+arg2+","+arg3);58 float rs = ((float)arg2)/arg3;59 pro.setMessage("当前加载到:"+rs*100+"%");60 if(arg2 == arg3){61 pro.cancel();62 }63 }64 });65 }66 67 @Override68 public boolean onCreateOptionsMenu(Menu menu) {69 // Inflate the menu; this adds items to the action bar if it is present.70 getMenuInflater().inflate(R.menu.activity_main, menu);71 return true;72 }73 74 }
0 0
- ImageLoader 加载本地图片
- ImageLoader加载圆形图片
- Android 图片加载ImageLoader
- imageloader加载网络图片
- ImageLoader加载图片配置
- imageloader加载本地图片
- ImageLoader加载圆形图片
- 图片的加载ImageLoader
- 图片加载类ImageLoader
- universal-ImageLoader加载图片
- Android图片加载ImageLoader
- ImageLoader加载圆形图片
- ImageLoader加载图片
- ImageLoader加载图片
- imageLoader加载本地图片
- 图片异步加载ImageLoader
- ImageLoader 加载图片错乱
- Android ImageLoader加载图片
- Dbutils数据库增删改查
- HttpEntity转换Inputstream(红色)加XmlPull解析
- html与Android——webView
- UniversalImageLoader源码解读06-任务调度
- 利用JS做到隐藏div和显示div
- ImageLoader加载图片
- @Class
- CStatic 链接 改变鼠标形状。
- ViewPager图片自动轮播加原点
- 解析json数组——TypeToken
- ExpandableListView二级列表
- android 补间动画帧动画
- ActionBar窗口应用
- 界面之间各种传值