三方库-SD_webImage

一、使用cocoapods将库导入工程

在podfile中写入

target'demo2' do

pod 'SDWebImage', '~>3.8’

end

终端更新一下podfile

pod update

二、使用方式

项目中引入头文件

#import


(一)简单的图片存储

1.获取当前图片的地址

- (NSURL *)sd_imageURL;

2、下载网络图片并缓存

- (void)sd_setImageWithURL:(NSURL *)url placeholderImage:(UIImage *)placeholder;

3.下载完成图片后并执行回调

- (void)sd_setImageWithURL:(NSURL *)url placeholderImage:(UIImage *)placeholder completed:(SDWebImageCompletionBlock)completedBlock;

(二)对按钮的处理

#import "UIButton+WebCache.h”

1、设置不同状态的按钮的图片

- (void)sd_setImageWithURL:(NSURL *)url forState:(UIControlState)state;

2、设置不同状态的按钮的背景图片

- (void)sd_setBackgroundImageWithURL:(NSURL *)url forState:(UIControlState)state placeholderImage:(UIImage *)placeholder;

(三)SDWebImageOptions

1.SDWebImageRetryFailed  失败后重试

2.SDWebImageLowPriority  延迟下载

3.SDWebImageCacheMemoryOnly  只在内存缓存

4.SDWebImageProgressiveDownload  渐进式下载,显示的图像是逐步在下载

5.SDWebImageRefreshCached  刷新缓存,专门处理相同url,但不同image的情况的

6.SDWebImageContinueInBackground  启动后台下载,app进入后台后继续下载

7.SDWebImageHandleCookies  处理存储在NSHTTPCookieStore中的cookie

8. SDWebImageAllowInvalidSSLCertificates  允许使用无效的SSL证书,主要用于测试目的,在正式环境中慎用

9. SDWebImageHighPriority  优先下载

10. SDWebImageDelayPlaceholder  等待下载完成后再显示占位图片,延迟显示占位图片

11. SDWebImageTransformAnimatedImage  改变动画形象

12. SDWebImageAvoidAutoSetImage  下载完成后手动设置图片,默认是下载完成后自动放到ImageView上

(四)缓存类型—SDImageCacheType

1.SDImageCacheTypeNone永不缓存,但是从网上下载

2.SDImageCacheTypeDisk只缓存到磁盘上

3.SDImageCacheTypeMemory只缓存到内存中

三、sd_webImage实现原理

(一)内部实现重要类

1.SDWebImageManager

2.SDWebImageDownloader

3.SDWebImageDownloaderOperation

4.SDImageCache

5.SDWebImageDecoder


三方库-SD_webImage_第1张图片

你可能感兴趣的:(三方库-SD_webImage)