码迷,mamicode.com
首页 > Web开发 > 详细

第三方框架之SDWebImage

时间:2015-11-11 14:38:03      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:

1. 下载SDWebImage,导入工程。github托管地址https://github.com/rs/SDWebImage

2. 在需要的地方导入头文件#import "UIImageView+WebCache.h"

3. 调用sd_setImageWithURL:方法缓存图片,注意,这就是新版本的新方法,旧方法是setImageWithURL:

[self.imgView sd_setImageWithURL:[NSURL URLWithString:urlStirng]];

4. 其他的一些方法

(1)

sd_setImageWithURL:  completed:
  
//用block 可以在图片加载完成之后做些事情 [self.image2 sd_setImageWithURL:imagePath2 completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, NSURL *imageURL) { NSLog(@"图片加载完成之后做些事情"); }];

(2)

  sd_setImageWithURL:  placeholderImage:
  //给一张站位图片,先使用默认图片,当图片加载完成后再替换 [self.image1 sd_setImageWithURL:imagePath1 placeholderImage:[UIImage imageNamed:@"default"]];
 

 //使用默认图片,而且用block 在完成后做一些事情 不多说 [self.image1 sd_setImageWithURL:imagePath1 placeholderImage:[UIImage imageNamed:@"default"] completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, NSURL *imageURL) { NSLog(@"图片加载完成后做的事情"); }];

 5. 异步图片缓存

使用SDWebImageManager类:可以进行一些异步加载的工作。

SDWebImageManager *manager = [SDWebImageManager sharedManager];

UIImage *cachedImage = [manager imageWithURL:url]; // 将需要缓存的图片加载进来

if (cachedImage) {

      // 如果Cache命中,则直接利用缓存的图片进行有关操作

} else {

      // 如果Cache没有命中,则去下载指定网络位置的图片,并且给出一个委托方法

     [manager downloadWithURL:url delegate:self];
}

当然你的类要实现SDWebImageManagerDelegate协议,并且要实现协议的webImageManager:didFinishWithImage:方法。

// 当下载完成后,调用回调方法,使下载的图片显示
- (void)webImageManager:(SDWebImageManager *)imageManager didFinishWithImage:(UIImage *)image {

}

 

第三方框架之SDWebImage

标签:

原文地址:http://www.cnblogs.com/10-19-92/p/4955884.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!