博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
对UIImageView+WebCache的封装
阅读量:6177 次
发布时间:2019-06-21

本文共 2003 字,大约阅读时间需要 6 分钟。

UIImageView+SDWebImage.h

#import 
typedef void(^DownloadImageSuccessBlock)(UIImage *image);typedef void(^DownloadImageFailedBlock)(NSError *error);typedef void(^DownloadImageProgressBlock)(CGFloat progress);@interface UIImageView (SDWebImage)/** 异步加载图片 @param url 图片地址 @param imageName 占位图片名 */- (void)downloadImage:(NSString *)url placeholder:(NSString *)imageName;/** 异步加载图片,可以监听下载进度,成功或失败 @param url 图片地址 @param imageName 占位图片名 @param success 下载成功 @param failed 下载失败 @param progress 下载进度 */- (void)downloadImage:(NSString *)url placeholder:(NSString *)imageName success:(DownloadImageSuccessBlock)success failed:(DownloadImageFailedBlock)failed progress:(DownloadImageProgressBlock)progress;@end

UIImageView+SDWebImage.m

#import "UIImageView+SDWebImage.h"#import "UIImageView+WebCache.h"@implementation UIImageView (SDWebImage)- (void)downloadImage:(NSString *)url placeholder:(NSString *)imageName {        [self sd_setImageWithURL:[NSURL URLWithString:url] placeholderImage:[UIImage imageNamed:imageName] options:SDWebImageRetryFailed | SDWebImageLowPriority];}- (void)downloadImage:(NSString *)url placeholder:(NSString *)imageName success:(DownloadImageSuccessBlock)success failed:(DownloadImageFailedBlock)failed progress:(DownloadImageProgressBlock)progress {        [self sd_setImageWithURL:[NSURL URLWithString:url] placeholderImage:[UIImage imageNamed:imageName] options:SDWebImageRetryFailed | SDWebImageLowPriority progress:^(NSInteger receivedSize, NSInteger expectedSize, NSURL * _Nullable targetURL) {                progress(receivedSize * 1.0 / expectedSize);            } completed:^(UIImage * _Nullable image, NSError * _Nullable error, SDImageCacheType cacheType, NSURL * _Nullable imageURL) {                if (error) {                        failed(error);        } else {                        self.image = image;            success(image);        }    }];    }@end

转载于:https://www.cnblogs.com/xuzb/p/8872075.html

你可能感兴趣的文章
光模块及光纤知识(含分类,常用类型介绍)
查看>>
Apache 单IP多端口设置
查看>>
安装系统前的准备---vmware
查看>>
Tiny并行计算框架之使用介绍
查看>>
Linux od命令
查看>>
一个不错的MySQL集群管理工具
查看>>
mysql-proxy 按表分发查询的lua脚本
查看>>
在wordpress主题下面添加二级菜单
查看>>
CentOS 下JDK安装
查看>>
Nginx + Django
查看>>
我的友情链接
查看>>
用shell脚本编写进度条
查看>>
使用Live555类库实现的网络直播系统
查看>>
IO与NIO
查看>>
go_wed编程笔记
查看>>
iptables防火墙的使用
查看>>
浅谈js中的继承
查看>>
软件工程 之 画扇面
查看>>
zabbix mysql数据库迁移方案
查看>>
VirtualBox虚拟机网络设置(四种方式)
查看>>