zoukankan      html  css  js  c++  java
  • Android图片缓存的框架ImageLoader的使用

    DisplayImageOptions options;        // DisplayImageOptions是用于设置图片显示的类

    // 使用DisplayImageOptions.Builder()创建DisplayImageOptions  
    options = new DisplayImageOptions.Builder()  
    .showStubImage(R.drawable.ic_stub)          // 设置图片下载期间显示的图片  
    .showImageForEmptyUri(R.drawable.ic_empty)  // 设置图片Uri为空或是错误的时候显示的图片  
    .showImageOnFail(R.drawable.ic_error)       // 设置图片加载或解码过程中发生错误显示的图片      
    .cacheInMemory(true)                        // 设置下载的图片是否缓存在内存中  
    .cacheOnDisc(true)                          // 设置下载的图片是否缓存在SD卡中  
    .displayer(new RoundedBitmapDisplayer(20))  // 设置成圆角图片  
    .build();                                   // 创建配置过得DisplayImageOption对象

    private ImageLoadingListener animateFirstListener = new AnimateFirstDisplayListener();

    /**
     * 图片加载第一次显示监听器
     * @author Administrator
     *
     */  
    private static class AnimateFirstDisplayListener extends SimpleImageLoadingListener {  
              
    static final List<String> displayedImages = Collections.synchronizedList(new LinkedList<String>()); 
    @Override  
    public void onLoadingComplete(String imageUri, View view, Bitmap loadedImage) {  
        if (loadedImage != null) {  
           ImageView imageView = (ImageView) view;  
           // 是否第一次显示  
           boolean firstDisplay = !displayedImages.contains(imageUri);  
           if (firstDisplay) {  
                 // 图片淡入效果  
                 FadeInBitmapDisplayer.animate(imageView, 500);  
                 displayedImages.add(imageUri);  
             }  
           }  
        }  
    }

    /**
     * 显示图片
     * 参数1:图片url
     * 参数2:显示图片的控件
     * 参数3:显示图片的设置
     * 参数4:监听器
     */  
    imageLoader.displayImage(imageUrls[position], holder.image, options, animateFirstListener);

    详细的可以参考博客:

    http://blog.csdn.net/wwj_748/article/details/10079311

  • 相关阅读:
    Android Animation 动画
    Android 发布Apk签名
    Android的长度单位及屏幕分辨率
    动态加载css、js引用
    Cassandra1.2文档学习(10)—— 插入和更新数据
    Cassandra1.2文档学习(9)—— 数据写入
    Cassandra1.2文档学习(8)—— 数据管理
    Cassandra1.2文档学习(7)—— 规划集群部署
    Cassandra1.2文档学习(6)—— 客户端数据请求
    Cassandra1.2文档学习(5)—— Snitch
  • 原文地址:https://www.cnblogs.com/wobuyayi/p/5701876.html
Copyright © 2011-2022 走看看