ios网络加载图片进行本地文件缓存开源插件sdwebimagecache

对ios网络加载图片进行本地文件缓存

https://github.com/rs/SDWebImage


把sdwebimage放入项目

加入imageIO.frtamework

和MapKit.framework

例子:

[imageView setImageWithURL:[NSURL URLWithString:@"https://graph.facebook.com/olivier.poitrey/picture"]     
          placeholderImage:[UIImage imageNamed:@"avatar-placeholder.png"]
                   options:SDWebImageRefreshCached];

setImageWithURL -网络的图片地址

placeholderImage - 本地保存的文件名

 options:SDWebImageRefreshCached - 图片改变时刷新



异步加载

    NSURL *url = [NSURL URLWithString:result];

    NSArray *strArr= [result componentsSeparatedByString:@"/"];

    NSString *pKey = strArr[strArr.count - 1];

    

    if ([[SDImageCache sharedImageCache] imageFromDiskCacheForKey:pKey]) {

        theBlock([[SDImageCache sharedImageCache] imageFromDiskCacheForKey:pKey]);

    } else {

        SDWebImageManager *manager = [SDWebImageManager sharedManager];

        [manager downloadWithURL:url

                         options:0

                        progress:^(NSUInteger receivedSize, long long expectedSize) {

                            // progression tracking code

                        }

                       completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, BOOL finished) {

                           if (image) {

                               [[SDImageCache sharedImageCache] storeImage:image

                                                                    forKey:pKey

                                                                    toDisk:YES];

                               theBlock(image);

                               // do something with image

                           }

                       }];

    }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值