您的位置:首页 > 产品设计 > UI/UE

用SDWebImage下载图片、缓存图片到UIImage

2015-09-25 13:56 519 查看
1.用SDWebImage下载图片

#import "SDWebImageManager.h"
[[SDWebImageManager sharedManager] downloadImageWithURL:[NSURL URLWithString:@"anurl"] options:0
progress:^(NSInteger receivedSize, NSInteger expectedSize)
{
//处理下载进度
} completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, BOOL finished, NSURL *imageURL) {
completedCount ++ ;
if (error) {
DDLogDebug(@"error is %@",error);
}
if (image) {
//图片下载完成  在这里进行相关操作,如加到数组里 或者显示在imageView上
}
}
}];


2.图片缓存

//需要导入的头文件
#import "SDImageCache.h"

UIImage *image = [UIImage imageNamed:@"home_btn_skip"];
[[SDImageCache sharedImageCache] storeImage:image forKey:@"anUrlString" toDisk:NO];

//下方是用SDWebimage加载刚刚缓存的图片
//    UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0,0 ,300 ,300 )];
//    [imageView setImageWithURL:[NSURL URLWithString:@"anUrlString"]];
//    [self.view addSubview:imageView];



[[SDImageCache sharedImageCache] storeImage:image forKey:@"anUrlString" toDisk:NO];


这个方法中forkey 是image缓存所对应的键 一般都是与一张图片的url对应。toDisk 是说是否缓存到本地。SDWebimage 下载图片时候会先去缓存根据提供的url寻找缓存中是否有这个图片 如果有就加载 ,如果没有就进行网络请求。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: