博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
源码阅读:SDWebImage(五)——SDWebImageFrame
阅读量:5973 次
发布时间:2019-06-19

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

该文章阅读的SDWebImage的版本为4.3.3。

根据SDWebImage作者的描述,这个类是用来帮助创建动图的。

1.接口文件

  • 属性
/** 当前帧的图像 */@property (nonatomic, strong, readonly, nonnull) UIImage *image;/** 当前帧的展示时间,单位是秒 */@property (nonatomic, readonly, assign) NSTimeInterval duration;复制代码
  • 方法
/** 以指定图像和时长实例化本类对象 */+ (instancetype _Nonnull)frameWithImage:(UIImage * _Nonnull)image duration:(NSTimeInterval)duration;复制代码

2.实现文件

  • 类扩展属性
@property (nonatomic, strong, readwrite, nonnull) UIImage *image;@property (nonatomic, readwrite, assign) NSTimeInterval duration;复制代码

因为接口文件中属性的关键字有readonly,是只读的,所以在类方法中就无法赋值,因此就在类扩展中添加可读写属性。

  • 方法实现
+ (instancetype)frameWithImage:(UIImage *)image duration:(NSTimeInterval)duration {    // 可以看到这就是一个非常标准的工厂方法    SDWebImageFrame *frame = [[SDWebImageFrame alloc] init];    frame.image = image;    frame.duration = duration;        return frame;}复制代码

3.总结

正如作者所说的,这个类就是一个辅助类,记录动图的每一帧及这一帧的展示时长,帮助创建动图。

源码阅读系列:SDWebImage

转载地址:http://azdox.baihongyu.com/

你可能感兴趣的文章
死锁与活锁的区别,死锁与饥饿的区别
查看>>
基于django的个人博客网站建立(四)
查看>>
NODE学习:利用nodeJS去抓网页的信息
查看>>
五劳七伤向后瞧
查看>>
彻底理解ThreadLocal
查看>>
[导入]让你的WAP网站有更好的兼容性
查看>>
.NET Exceptionless 本地部署踩坑记录
查看>>
TOMCAT 的 CONTEXT
查看>>
航电OJ-2544最短路
查看>>
CF772E Verifying Kingdom
查看>>
POJ 3417 Network
查看>>
雨林木风U盘装系统综合教程
查看>>
我们数学中常用的自然常数e代表什么?看完长知识了!
查看>>
V-by-one
查看>>
IOS设计模式浅析之桥接模式(Bridge)
查看>>
让我欲罢不能的node.js
查看>>
让AutoMapper更好用
查看>>
python3基础知识学习记录
查看>>
10年.NET老程序员推荐的7个开发类工具
查看>>
C#核心编程结构(2)
查看>>