SDWebImage常用函数

2023-12-19 12:58
文章标签 函数 常用 sdwebimage

本文主要是介绍SDWebImage常用函数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

"加载GIF图"- (void)loadGIF
{NSURL *URL;// 加载网络gif图URL = [NSURL URLWithString:@"http://photo.l99.com/source/11/1330351552722_cxn26e.gif"];// 加载本地gif图
//    URL = [[NSBundle mainBundle] URLForResource:@"money.gif" withExtension:nil];[self.imgView sd_setImageWithURL:URL];
}

"监听图片下载进度"- (void)loadProgress
{NSURL *URL = [NSURL URLWithString:@"http://img3.duitang.com/uploads/item/201608/18/20160818212406_XVw4K.jpeg"];[self.imgView sd_setImageWithURL:URL placeholderImage:nil options:0 progress:^(NSInteger receivedSize, NSInteger expectedSize) {// receivedSize : 接收的图片大小// expectedSize : 图片的总大小float progress = (float)receivedSize / expectedSize;NSLog(@"%zd %zd %f",receivedSize,expectedSize,progress);} completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, NSURL *imageURL) {NSLog(@"图片下载完成 %@",image);}];
}

"Manager下载图片"- (void)LoadImageWithManager
{NSURL *URL = [NSURL URLWithString:@"http://img3.duitang.com/uploads/item/201608/18/20160818212406_XVw4K.jpeg"];[[SDWebImageManager sharedManager] downloadImageWithURL:URL options:0 progress:^(NSInteger receivedSize, NSInteger expectedSize) {// receivedSize : 接收的图片大小// expectedSize : 图片的总大小float progress = (float)receivedSize / expectedSize;NSLog(@"%zd %zd %f",receivedSize,expectedSize,progress);} completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, BOOL finished, NSURL *imageURL) {self.imgView.image = image;}];
}

  • 1.图片文件缓存的时间有多长:1周

    _maxCacheAge = kDefaultCacheMaxCacheAge

  • 2.SDWebImage 的内存缓存是用什么实现的?

    NSCache

  • 3.SDWebImage 的最大并发数是多少?

    maxConcurrentDownloads = 6

  • 4.SDWebImage 支持动图吗?GIF

#import <ImageIO/ImageIO.h>
[UIImage animatedImageWithImages:images duration:duration];
  • 5.SDWebImage是如何区分不同格式的图像的
根据图像数据第一个字节来判断的!
PNG:0x89
JPG:0xFF
GIF:0x47

-6.SDWebImage 缓存图片的名称是怎么确定的!

md5如果单纯使用 文件名保存,重名的几率很高!使用 MD5 的散列函数!对完整的 URL 进行 md5,结果是一个 32 个字符长度的字符串!
  • 7.SDWebImage 的内存警告是如何处理的!

    利用通知中心观察

    • UIApplicationDidReceiveMemoryWarningNotification 接收到内存警告的通知
      执行 clearMemory 方法,清理内存缓存!
    • UIApplicationWillTerminateNotification 接收到应用程序将要终止通知
      执行 cleanDisk 方法,清理磁盘缓存!
    • UIApplicationDidEnterBackgroundNotification 接收到应用程序进入后台通知
      执行 backgroundCleanDisk 方法,后台清理磁盘!
      通过以上通知监听,能够保证缓存文件的大小始终在控制范围之内!
      clearDisk 清空磁盘缓存,将所有缓存目录中的文件,全部删除! 实际工作,将缓存目录直接删除,再次创建一个同名空目录!

这篇关于SDWebImage常用函数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/512245

相关文章

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

Python常用命令提示符使用方法详解

《Python常用命令提示符使用方法详解》在学习python的过程中,我们需要用到命令提示符(CMD)进行环境的配置,:本文主要介绍Python常用命令提示符使用方法的相关资料,文中通过代码介绍的... 目录一、python环境基础命令【Windows】1、检查Python是否安装2、 查看Python的安

Python中help()和dir()函数的使用

《Python中help()和dir()函数的使用》我们经常需要查看某个对象(如模块、类、函数等)的属性和方法,Python提供了两个内置函数help()和dir(),它们可以帮助我们快速了解代... 目录1. 引言2. help() 函数2.1 作用2.2 使用方法2.3 示例(1) 查看内置函数的帮助(

python判断文件是否存在常用的几种方式

《python判断文件是否存在常用的几种方式》在Python中我们在读写文件之前,首先要做的事情就是判断文件是否存在,否则很容易发生错误的情况,:本文主要介绍python判断文件是否存在常用的几种... 目录1. 使用 os.path.exists()2. 使用 os.path.isfile()3. 使用

C++ 函数 strftime 和时间格式示例详解

《C++函数strftime和时间格式示例详解》strftime是C/C++标准库中用于格式化日期和时间的函数,定义在ctime头文件中,它将tm结构体中的时间信息转换为指定格式的字符串,是处理... 目录C++ 函数 strftipythonme 详解一、函数原型二、功能描述三、格式字符串说明四、返回值五

Python中bisect_left 函数实现高效插入与有序列表管理

《Python中bisect_left函数实现高效插入与有序列表管理》Python的bisect_left函数通过二分查找高效定位有序列表插入位置,与bisect_right的区别在于处理重复元素时... 目录一、bisect_left 基本介绍1.1 函数定义1.2 核心功能二、bisect_left 与

java中BigDecimal里面的subtract函数介绍及实现方法

《java中BigDecimal里面的subtract函数介绍及实现方法》在Java中实现减法操作需要根据数据类型选择不同方法,主要分为数值型减法和字符串减法两种场景,本文给大家介绍java中BigD... 目录Java中BigDecimal里面的subtract函数的意思?一、数值型减法(高精度计算)1.

C++/类与对象/默认成员函数@构造函数的用法

《C++/类与对象/默认成员函数@构造函数的用法》:本文主要介绍C++/类与对象/默认成员函数@构造函数的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录名词概念默认成员函数构造函数概念函数特征显示构造函数隐式构造函数总结名词概念默认构造函数:不用传参就可以

C++类和对象之默认成员函数的使用解读

《C++类和对象之默认成员函数的使用解读》:本文主要介绍C++类和对象之默认成员函数的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、默认成员函数有哪些二、各默认成员函数详解默认构造函数析构函数拷贝构造函数拷贝赋值运算符三、默认成员函数的注意事项总结一

Java实现本地缓存的常用方案介绍

《Java实现本地缓存的常用方案介绍》本地缓存的代表技术主要有HashMap,GuavaCache,Caffeine和Encahche,这篇文章主要来和大家聊聊java利用这些技术分别实现本地缓存的方... 目录本地缓存实现方式HashMapConcurrentHashMapGuava CacheCaffe