Categories是給你得不到源碼的classes增加功能的一種方法。這個(gè)頁(yè)面收集一些相關(guān)的Category颂郎,并且持續(xù)更新,你可以訂閱關(guān)注。
參考閱讀:
蘋(píng)果官方文檔:<a >Customizing Existing Classes</a>
<a >UIImageView+FaceAwareFill</a>
這個(gè)類別使用了Aspect Fill內(nèi)容模式脚草,可以自動(dòng)根據(jù)圖像內(nèi)容進(jìn)行調(diào)整,當(dāng)檢測(cè)到人臉時(shí)原献,它會(huì)以臉部中心替代掉以圖片的幾何中心馏慨。
測(cè)試環(huán)境:Xcode 5.0,iOS 6.0以上
<a >NSRegularEx+ObjCRegex</a>
Objective-C-RegEx-Categories是NSRegularExpression的一個(gè)延展姑隅,它可以把Object-C中的很多正則表達(dá)式合并成一個(gè)写隶,簡(jiǎn)化了代碼。
這個(gè)庫(kù)沒(méi)有任何依賴性讲仰,適用于iOS 4+和OS X 10.7+慕趴。
<a >NSObject+AutoCoding </a>
AutoCoding是一個(gè)NSObject的類目,提供了對(duì)NSCoding 和NSCopying的自動(dòng)支持鄙陡。
兼容ARC和non-ARC編譯目標(biāo)
支持iOS 7.0/Mac OS 10.9 (Xcode 5.0, Apple LLVM compiler 5.0)
<a href = "http://www.reibang.com/u/1eb09a761d8b">NSInvocation+SimpleCreation </a>
創(chuàng)建invocations的簡(jiǎn)單方法
<a >NSString+SHPersian </a>
SHPersian是一個(gè)針對(duì)使用波斯語(yǔ)和阿拉伯語(yǔ)的iOS開(kāi)發(fā)者提供的工具冕房,包含了一個(gè)在Persian iOS app中為文本添加自定義外觀的必需的類。
<a >UILabel+ContentSize</a>
在UILabel內(nèi)計(jì)算內(nèi)容的大小趁矾。
<a >UIViewController+Swizzled </a>
記錄UIViewController層次:包括你在視圖控制器的名字耙册,還有你進(jìn)入層次的展示。
<a href = "http://www.reibang.com/u/1eb09a761d8b">NSObject+Association </a>
你是不是一直希望將"userInfo"顯示到UIAlertView上呢毫捣?通過(guò)Association這個(gè)category可以將任意的對(duì)象賦值給其它任意對(duì)象(從iOS3.1和mac os 10.6到最新的系統(tǒng)版本详拙。)
<a >NSHTTPCookieStorage+FreezeDry </a>
app重啟時(shí)帝际,清除UIWebView cookies。
<a >UIDevice+Hardware </a>
檢測(cè)硬件設(shè)備的版本饶辙。
<a >NSObject+LogDealloc </a>
是一個(gè)NSObject category蹲诀,對(duì)于內(nèi)存泄露的跟蹤非常有用
<a >NSObject+SFObservers </a>
是對(duì)NSNotificationCenter and KVO的一個(gè)擴(kuò)展,它能夠自動(dòng)移除觀察者弃揽。
<a >UIApplication+NetworkActivity </a>
UIApplication+NetworkActivity跟蹤你最近進(jìn)行過(guò)的網(wǎng)絡(luò)操作侧甫,并管理NetworkActivityIndicator。
<a >UIView+Recursion</a>
以遞歸的方式遍歷(查找)subview
<a >UIView+RoundedCorners </a>
使用圖層蒙版為視圖添加圓角
<a >UIView+Stacker</a>
Stack subviews是按照索引進(jìn)行垂直排序的蹋宦。主要用于——使用xib時(shí)披粟,以及需要進(jìn)行view布局時(shí)(顯示/隱藏)——當(dāng)基于外部數(shù)據(jù)。不過(guò)不能用于autolayout冷冗。.
<a >NSString+PDRegex </a>
簡(jiǎn)化正則表達(dá)式的使用
<a >MKMapView+MoveLogo </a>
這個(gè)類目允許你移動(dòng)MKMapView logo守屉,即使你放其他東西在mapview上它仍能保持可見(jiàn)。如果隱藏了logo蒿辙,那將不能通過(guò)App Store審核拇泛。已經(jīng)在iOS 5-iOS 7上進(jìn)行了測(cè)試。
<a >NSDate+Escort </a>
NSDate-Escort是一個(gè)NSDate實(shí)用庫(kù)思灌,兼容NSDate-Extensions API
<a >UILabel+DynamicSizeMe</a>
調(diào)整UILabel來(lái)根據(jù)內(nèi)容改變其框架
<a >UIView+Toast </a>
適用于iOS上的Android風(fēng)格toas通知俺叭。
<a >UIImage+NYXImagesKit</a>
NYXImagesKit是一個(gè)重組了多個(gè)有用的UIImage categories的iOS項(xiàng)目,可對(duì)圖像/圖片進(jìn)行多個(gè)處理泰偿,比如篩選熄守、模糊、優(yōu)化耗跛、蒙版裕照、調(diào)整大小、旋轉(zhuǎn)以及保存等等调塌。同時(shí)還提供了一個(gè)UIImageView子類從URL異步加載圖片晋南,并在下載完畢時(shí)展示圖片。
<a >UIViewController+MJPopup </a>
MJPopupViewController是一個(gè) UIViewController Category羔砾,用于使用不同的過(guò)渡效果來(lái)把ViewController作為彈出視圖進(jìn)行展示负间。
<a >UIImage+MGImageUtilities </a>
MGImageUtilities展示兩個(gè)UIImage category:UIImage+ProportionalFill和UIImage+Tint。你可以通過(guò)UIImage+ProportionalFill調(diào)整任意圖片的尺寸姜凄,可以使用UIImage+Tint來(lái)為圖片著色政溃。
<a >MultipleObjects+DTFoundation </a>
DTFoundation集合了實(shí)用方法和category的擴(kuò)展,逐漸演變成一個(gè)文檔齊全的工具集檀葛,記錄和測(cè)試代碼以加快開(kāi)發(fā)玩祟。
<a >UIImageView+WebCache </a>
SDWebImage提供一個(gè)UIImageView類別,以支持加載管理源自網(wǎng)絡(luò)的遠(yuǎn)程圖片屿聋。具有異步加載空扎、緩存管理、同一個(gè)URL下載次數(shù)控制和優(yōu)化等特征润讥。簡(jiǎn)單易用转锈。
<a >UIColor+Colours </a>
100組漂亮的預(yù)制的色彩和配色方案可以讓你的iOS/OS X開(kāi)發(fā)更輕松。
<a >UIImage+PDFColoredImage </a>
UIImage-PDFColoredImage是一個(gè)UIImage擴(kuò)展楚殿,可以把黑色的PDF image轉(zhuǎn)換成任意尺寸任意顏色的UIImage撮慨,只需一行代碼,簡(jiǎn)單易用脆粥。
<a >NSData+AsyncCacher </a>
NSData-AsyncCacher是NSData的一個(gè)category砌溺,用于從url和block中異步加載數(shù)據(jù)。請(qǐng)求數(shù)據(jù)使用NSCache緩存变隔,可以多次請(qǐng)求规伐。
<a >NSDate+Helper </a>
通過(guò)一些便捷函數(shù)擴(kuò)展了Cocoa的NSDate
<a >MultipleObjects+ObjectiveSugar</a>
Objective-C additions for humans. Ruby style.
<a >MKMapView+ZoomLevel</a>
在MapView中設(shè)置縮放比例。
<a >NSString+Extensions </a>
一個(gè)針對(duì)NSStrings的category匣缘,它能將string轉(zhuǎn)換為SHA1猖闪,NSNumber。檢測(cè)string是否為空肌厨、是否包含某個(gè)子字符串培慌,以及替換掉NSDictionary中的子字符串。
<a >UIView+Utils</a>
ViewUtils是一個(gè)category methods的集合柑爸,這些方法是UIView的擴(kuò)展吵护,包含了許多方便的屬性和方法,其中許多都是我們希望蘋(píng)果內(nèi)置的表鳍。
<a >NSDate+TimeAgo</a>
讓NSDate報(bào)告時(shí)間何址,比如"A moment ago", "30 seconds ago", "5 minutes ago", "Yesterday", "Last month", "2 years ago"以及其他。
<a >NSString+FontAwesome</a>
FontAwesome+iOS是一個(gè)開(kāi)源形象字體庫(kù)进胯,通過(guò)擴(kuò)展 NSString 讓你在app中輕松使用 FontAwesome 字體用爪。
官方網(wǎng)站:http://fortawesome.github.io/Font-Awesome/
<a >NSArray+FirstObject</a>
從數(shù)組中獲得第一個(gè)對(duì)象,或者從空數(shù)組中返回零
<a >NSObject+AutoDescription</a>
能夠簡(jiǎn)單地為任何類描述日志(從 NSObject派生出來(lái))
<a >CGRect+Additions </a>
處理CGRects的一些函數(shù)胁镐。
<a >UIView+ModifyFrame</a>
簡(jiǎn)單實(shí)用的UIView類目使修改框架不那么變態(tài)偎血。
<a >NSString+UsefulShit </a>
Objective-C category 示范