SDWebImage简单使用
0、加载网络图片,需要使用URL,所以,只要类提供了有传URL的方法,就可以从网络下载图片,
比如NSData可以从网络下载图片,显示到imageView上:
选择使用SDWebImage加载图片!使用SDWebImage加载图片,会帮我们自动做图片缓存,下次从相同的URL中下载图片,会自动去缓存中取
1.依赖的框架
* ImageIO.framework
* MapKit.framework
2.UIImageView下载图片需要的头文件:UIImageView+WebCache.h
3.调用方法下载图片
// url是图片路径 // placeholder是占位图片(正在下载图片时,暂时显示的图片) // options是缓存策略 - (void)setImageWithURL:(NSURL *)url placeholderImage:(UIImage *)placeholder - (void)setImageWithURL:(NSURL *)url placeholderImage:(UIImage *)placeholder options:(SDWebImageOptions)options
4.缓存策略-SDWebImageOptions
默认是开启了硬盘\内存缓存的。当想改变缓存策略,可以指定下面这些参数。
* SDWebImageRetryFailed 下载失败了会再次尝试下载 * SDWebImageLowPriority 当UIScrollView等正在滚动时,延迟下载图片(放置scrollView滚动卡) * SDWebImageCacheMemoryOnly 只缓存到内存中,不缓存到硬盘上 * SDWebImageProgressiveDownload 图片会一点一点慢慢显示出来(就像浏览器显示网页上的图片一样) * SDWebImageRefreshCached 将硬盘缓存交给系统自带的NSURLCache去处理,当同一个URL对应的图片经常更改时可以用这种策略
一般使用SDWebImageRetryFailed | SDWebImageLowPriority
SDWebImageRefreshCached:当图片地址经常变化时,使用这个缓存策略(NSURLCache处理方式:当URL不变时,去缓存读取,当URL变化时,会去网络加载,并刷新缓存)。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
- (void)clearCache { [Tools showStatusWithString:@"清理中..."]; [[SDImageCache sharedImageCache] clearDiskOnCompletion:^{ // sdwebimage清理完自己管理的缓存后,我们来清理我们自己应用页面缓存 [[WBCacheManager shareManager] clearDisk]; [[KTCacheManager shareManager] clearDisk]; [Tools showSuccessWithString:@"清理成功"]; }]; // 清理tmp目录下的所有文件 NSString *direction = NSTemporaryDirectory(); NSArray *tmplist = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:direction error:nil]; for (NSString *filename in tmplist) { NSString *fullpath = [direction stringByAppendingPathComponent:filename]; if ([[NSFileManager defaultManager] fileExistsAtPath:fullpath]) { [[NSFileManager defaultManager] removeItemAtPath:fullpath error:nil]; } } }
· 用 C# 插值字符串处理器写一个 sscanf
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· .NET Core内存结构体系(Windows环境)底层原理浅谈
· C# 深度学习:对抗生成网络(GAN)训练头像生成模型
· 手把手教你更优雅的享受 DeepSeek
· AI工具推荐:领先的开源 AI 代码助手——Continue
· 探秘Transformer系列之(2)---总体架构
· V-Control:一个基于 .NET MAUI 的开箱即用的UI组件库
· 乌龟冬眠箱湿度监控系统和AI辅助建议功能的实现