imageloder1
2016-09-19 09:09
183 查看
DisplayImageOptions options = new DisplayImageOptions.Builder() // 设置图片在下载期间显示的图片 .showImageOnLoading(R.drawable.ic_launcher) // 设置图片Uri为空或是错误的时候显示的图片 .showImageOnFail(R.drawable.ic_launcher) // 设置下载的图片是否缓存在内存中 .cacheInMemory(true) // 设置下载的图片是否缓存在SD卡中 .cacheOnDisc(true) // -------------------------------------------------------------------- // 如果您只想简单使用ImageLoader这块也可以不用配置 // 是否考虑JPEG图像EXIF参数(旋转,翻转) .considerExifParams(true) /** * imageScaleType: EXACTLY :图像将完全按比例缩小的目标大小 * EXACTLY_STRETCHED:图片会缩放到目标大小完全 IN_SAMPLE_INT:图像将被二次采样的整数倍 * IN_SAMPLE_POWER_OF_2:图片将降低2倍,直到下一减少步骤,使图像更小的目标大小 NONE:图片不会调整 * */ // 设置图片以如何的编码方式显示 .imageScaleType(ImageScaleType.EXACTLY_STRETCHED) // 设置图片的解码类型// .bitmapConfig(Bitmap.Config.RGB_565) // 设置图片的解码配置 // .decodingOptions(options) // .delayBeforeLoading(int delayInMillis)//int // delayInMillis为你设置的下载前的延迟时间 // 设置图片加入缓存前,对bitmap进行设置 // .preProcessor(BitmapProcessor preProcessor) // 设置图片在下载前是否重置,复位 .resetViewBeforeLoading(true) // 是否设置为圆角,弧度为多少 RoundedBitmapDisplayer .displayer(new CircleBitmapDisplayer()) // //CircleBitmapDisplayer // .displayer(new RoundedBitmapDisplayer(Color.WHITE, 5)) // 是否图片加载好后渐入的动画时间 .displayer(new FadeInBitmapDisplayer(100)) // 构建完成 // ------------------------------------------------------------------- .build(); return options; } public static void initImage(Context context) { ImageLoaderConfiguration.Builder configuration = new ImageLoaderConfiguration.Builder( context); // 本段代码,如果是测试使用时,可以不添加,不影响ImageLoader的正常使用 configuration .memoryCacheExtraOptions(200, 200) // default = device screen dimensions // 缓存到磁盘中的图片宽高 .diskCacheExtraOptions(200, 200, null) // .taskExecutor(null) // .taskExecutorForCachedImages() .threadPoolSize(3) // default 线程优先级 .threadPriority(Thread.NORM_PRIORITY - 2) // default .tasksProcessingOrder(QueueProcessingType.FIFO) // // default设置在内存中缓存图像的多种尺寸 // 加载同一URL图片时,imageView从小变大时,从内存缓存中加载 .denyCacheImageMultipleSizesInMemory() // 超过设定的缓存大小时,内存缓存的清除机制 .memoryCache(new LruMemoryCache(2 * 1024 * 1024)) // 内存的一个大小 .memoryCacheSize(2 * 1024 * 1024) .memoryCacheSizePercentage(13) // default 将图片信息缓存到该路径下 // default 磁盘缓存的大小 .diskCacheSize(50 * 1024 * 1024) // 磁盘缓存文件的个数 .diskCacheFileCount(100) // 磁盘缓存的文件名的命名方式//一般使用默认值 (获取文件名称的hashcode然后转换成字符串)或MD5 new // Md5FileNameGenerator()源文件的名称同过md5加密后保存 .diskCacheFileNameGenerator(new HashCodeFileNameGenerator()) // 设置默认的图片加载 // 使用默认的图片解析器 .imageDecoder(new BaseImageDecoder(true)) // default .defaultDisplayImageOptions(DisplayImageOptions.createSimple()) .writeDebugLogs(); ImageLoader.getInstance().init(configuration.build()); } public static class AnimateFirstDisplayListener extends SimpleImageLoadingListener { @Override public void onLoadingComplete(String imageUri, View view, Bitmap loadedImage) { final List<String> displayedImages = Collections .synchronizedList(new LinkedList<String>()); if (loadedImage != null) { ImageView imageview = (ImageView) view; boolean firstDispaly = !displayedImages.contains(imageUri); if (firstDispaly) { FadeInBitmapDisplayer.animate(imageview, 1000); displayedImages.add(imageUri); }
相关文章推荐
- 按右键另存图片只能存BMP
- photoshop去除图片上的水印
- upload上传单张图片
- 图片引发的溢出危机(图)
- C# WinForm控件对透明图片重叠时出现图片不透明的简单解决方法
- C#实现把彩色图片灰度化代码分享
- C#将图片和字节流互相转换并显示到页面上
- C#监控文件夹并自动给图片文件打水印的方法
- 纯CSS实现的当鼠标移上图片添加阴影效果代码
- 如何使用C#从word文档中提取图片
- C#实现打开画图的同时载入图片、最大化显示画图窗体的方法
- C#图片添加水印的实现代码
- 随鼠标移动的图片或文字特效代码
- CSS 图片横向排列实现代码
- C#实现将Email地址转成图片显示的方法
- C#实现图片加相框的方法
- 超级经典一套鼠标控制左右滚动图片带自动翻滚
- 用css实现图片垂直居中的使用技巧
- 一起动手编写Android图片加载框架
- Android开发中ImageLoder进行图片加载和缓存