示例#1
0
 /**
  * 给ImageView加载普通图片
  *
  * @param uri 图片资源所对应的URI
  * @param imageView 需要加载到的ImageView容器
  * @param options 自定义的Display
  * @param outsideLoadingListener 加载事件监听器
  * @param progressListener 进度监听器
  */
 private void loadImage(
     String uri,
     ImageView imageView,
     DisplayImageOptions options,
     ImageLoadingListener outsideLoadingListener,
     ImageLoadingProgressListener progressListener) {
   // use image cache
   String fileName = fileHandler.getFileNameInUrl(uri);
   String fullPath = mImageCacheDir + fileName;
   if (fileHandler.isFileExists(fullPath)) {
     imageLoader.displayImage(
         ImageLoaderHelper.URI_PREFIX_FILE + fullPath,
         imageView,
         options,
         outsideLoadingListener,
         progressListener);
   } else {
     imageLoader.displayImage(
         uri,
         imageView,
         options,
         new SaveCacheImageLoadingListener(fullPath, outsideLoadingListener),
         progressListener);
   }
 }
示例#2
0
 /**
  * 从缓存文件中获取Bitmap
  *
  * @param url 源图片在网络上的路径
  * @param defRes 默认图片资源
  * @return 缓存文件的Bitmap
  */
 @Override
 public Bitmap getBitmapFromCachedFile(String url, int defRes) {
   String path =
       fileHandler.getCacheDirByType(IFileHandler.CacheDir.IMAGE)
           + fileHandler.getFileNameInUrl(url);
   if (!fileHandler.isFileExists(path)) {
     return BitmapFactory.decodeResource(context.getResources(), defRes);
   }
   return BitmapFactory.decodeFile(path);
 }
示例#3
0
  /** 初始化ImageLoader,在Application中执行 */
  @Override
  public void initImageLoader() {
    initUIL();

    if (imageLoader == null) imageLoader = ImageLoader.getInstance();
    if (!imageLoader.isInited()) imageLoader.init(defaultUilLoader);

    mImageCacheDir = fileHandler.getCacheDirByType(CacheDir.IMAGE);
  }
示例#4
0
 /**
  * 清除图片缓存
  *
  * @param size 需要保留的大小
  * @param millSecAgo 只保留millSecAgo毫秒内的图片
  */
 @Override
 public void cleanImageCache(long size, long millSecAgo) {
   fileHandler.cleanCache(mImageCacheDir, size, millSecAgo);
 }