码迷,mamicode.com
首页 > 移动开发 > 详细

iOS---学习研究大牛Git高星项目YYCategories(四)

时间:2018-06-28 12:13:59      阅读:369      评论:0      收藏:0      [点我收藏+]

标签:知识点   object   iges   path   Once   研究   多次   itext   提取   

今天开始研究YYCategories的Foundation扩展类。

它包含了作者对14个Foundation框架的扩展。在详细研究每一个扩展类前我发现了一个小知识点。

NS_ASSUME_NONNULL_BEGIN和NS_ASSUME_NONNULL_END。

两个宏中间包含的属性,参数值,返回值,默认是 nonnull 类型.

如果想要某个属性,参数值或者返回值为可选类型,则单独在该属性,参数值,或者返回值前单独标明nullable.

下面开始说一下每一个扩展类的功能,具体原理怎么实现的就自己看代码吧。毕竟代码写的很详细了。

一、UIKit类

1.UIDevice+YYAdd  不常用有的都已近老了

2.UIScrollView+YYAdd 添加滑动到指定边界

3.UIGestureRecognizer+YYAdd 功能强大 但是长按需要设置一下 否则长按多次  而且常用的也就是点击和长按 

4.UIColor+YYAdd 功能强大 但是一些东西不常用。用的多的是根据十六位进制生成颜色

5.UIFont+YYAdd 感觉用不到

6.UIBezierPath+YYAdd 用不到

7.UITextField+YYAdd 两个方法使用不了

8.UIBarButtonItem+YYAdd 不会用

9.UIImage+YYAdd

首先是一个加载动态图的方法、一个通过PDF获取图片的方法、一个通过emoji得到图片的方法、通过颜色获取图片的方法。

然后是一些修改图片的方法  这些在普通开发中不常用。只有在美颜相机中会遇到  不予考虑。

10.UIScreen+YYAdd 不常用有的都已近老了

11.UIApplication+WCYAdd.h 主要是一些属性提取出来很简单 自己看看就知道了

12.UIControl+YYAdd 主要是为UIbutton的父类UIcontrol做一些扩展。

13.UITableView+YYAdd 对系统的插入删除等方法进行了封装。

14.UIView+YYAdd 这个类首先是两个截屏功能,截屏转化pdf,移除子视图,坐标装换功能。

 二、Foundation

1.NSArray+YYAdd 

这个类前面对NSArray进行了扩展,可以从plist中得到数组

后面对NSMutableArray进行了扩展,可以从plist中得到数组。移除第一个最后一个数组。在开始或结尾或任意位置添加一个或多个元素。倒序输出数组等方法。

2.NSBundle+YYAdd 这个类我感觉功能不大,用不到

3.NSDate+YYAdd 

主要是把时间的一些属性提取出来。并对时间进行了一些处理。 

4.NSKeyedUnarchiver+YYAdd 归档解归档 这一块我用得少  就不做评价了

5.NSNumber+YYAdd 就讲了一个方法 字符串转化为NSNumber

6.NSObject+YYAddForARC  重新定义了一些arc方法

7.NSDictionary+YYAdd 

首先是NSDictionary的扩展,先写了几个方法从plist中生成字典和转化plist。

然后是一个把字典key排序后输出为数组的方法,然后还有一个从xml中生成字典的方法。判断字典是否含有某个key的方法。爱人牛还设置了一些getter value的方法

下面是NSMutableDictionary的扩展,方法和上面的差不多。但是添加了两个修改方法。

8.NSNotificationCenter+YYAdd

这个类功能强大  新增了几个发通知的方法。可详细看看代码

9.NSObject+YYAddForKVO

这个类主要是对kvo的方法新添了个观察方法。 

10.NSThread+YYAdd 添加了一个自动释放池

11.NSObject+YYAdd 这一块以后在了解。平时感觉用不到

12.NSTimer+YYAdd 为NSTimer新增两个方法。注释写的很清楚

13.NSString+YYAdd 主要是对字符串进行了加密处理。 

14.NSData+YYAdd 主要是对数据进行了加密处理。

三、Quartz

1.CALayer+YYAdd  YYCGUtilities这两个类平时用不到。

 

YYCategories了解到这里就差不多了。

iOS---学习研究大牛Git高星项目YYCategories(四)

标签:知识点   object   iges   path   Once   研究   多次   itext   提取   

原文地址:https://www.cnblogs.com/weicyNo-1/p/9223342.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有 京ICP备13008772号-2
迷上了代码!