iOS---學習研究大牛Git高星項目YYCategories(四)

來源:互聯網
上載者:User

標籤:知識點   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(四)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.