zoukankan      html  css  js  c++  java
  • SDWebImage的使用

    - setItem:(CustomItem *)item
    {
        _item = item;
      // 占位图片
        UIImage *placeholder = [UIImage imageNamed:@"placeholderImage"];
        // 从内存沙盒缓存中获得原图
        UIImage *originalImage = [[SDImageCache sharedImageCache] imageFromDiskCacheForKey:item.originalImage];
        if (originalImage) { // 如果内存沙盒缓存有原图,那么就直接显示原图(不管现在是什么网络状态)
            [self.imageView sd_setImageWithURL:[NSURL URLWithString:item.originalImage] placeholderImage:placeholder];
        } else { // 内存沙盒缓存没有原图
            AFNetworkReachabilityManager *mgr = [AFNetworkReachabilityManager sharedManager];
            if (mgr.isReachableViaWiFi) { // 在使用Wifi, 下载原图
                [self.imageView sd_setImageWithURL:[NSURL URLWithString:item.originalImage] placeholderImage:placeholder];
            } else if (mgr.isReachableViaWWAN) { // 在使用手机自带网络
                //     用户的配置项假设利用NSUserDefaults存储到了沙盒中
                //    [[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"alwaysDownloadOriginalImage"];
                //    [[NSUserDefaults standardUserDefaults] synchronize];
    #warning 从沙盒中读取用户的配置项:在3G4G环境是否仍然下载原图
                BOOL alwaysDownloadOriginalImage = [[NSUserDefaults standardUserDefaults] boolForKey:@"alwaysDownloadOriginalImage"];
                if (alwaysDownloadOriginalImage) { // 下载原图
                    [self.imageView sd_setImageWithURL:[NSURL URLWithString:item.originalImage] placeholderImage:placeholder];
                } else { // 下载小图
                    [self.imageView sd_setImageWithURL:[NSURL URLWithString:item.thumbnailImage] placeholderImage:placeholder];
                }
            } else { // 没有网络
                UIImage *thumbnailImage = [[SDImageCache sharedImageCache] imageFromDiskCacheForKey:item.thumbnailImage];
                if (thumbnailImage) { // 内存沙盒缓存中有小图
                    [self.imageView sd_setImageWithURL:[NSURL URLWithString:item.thumbnailImage] placeholderImage:placeholder];
                } else {
                    [self.imageView sd_setImageWithURL:nil placeholderImage:placeholder];
                }
            }
        }
    }
    View Code
  • 相关阅读:
    处理ORACLE死锁
    正则表达式 浮点数 整型
    Oracle数据类型number(m,n)
    chm文件打开无法正常显示内容
    安装PHP程序提示“include_path='.;c:php5pear'”错误的解决方法
    mysql数据导入数据报错(数据丢失)
    微信小程序如何与数据库交互?
    Eclipse 常用快捷键
    深入理解BodyTagSupport,包括SKIP_PAGE, EVAL_PAGE等
    JSP自定义标签Taglib实现过程重点总结
  • 原文地址:https://www.cnblogs.com/ithongjie/p/5458639.html
Copyright © 2011-2022 走看看