引言
作為iOS開(kāi)發(fā)人員,在開(kāi)發(fā)App的過(guò)程中怎么會(huì)不使用第三方庫(kù)呢?相信沒(méi)有App是不使用第三方庫(kù)的!相信自己在所做過(guò)的App中使用過(guò)哪些第三方庫(kù)呢? 網(wǎng)絡(luò)庫(kù)
說(shuō)到網(wǎng)絡(luò)庫(kù),這是開(kāi)發(fā)必備,除非你的App玩單機(jī)?,F(xiàn)在特別火也特別好用的網(wǎng)絡(luò)庫(kù)就數(shù)AFNetworking了。也有部分同志喜歡自己用原生的NSURLConnection來(lái)做,當(dāng)然是可以的,只是要寫(xiě)起來(lái)也困難,維護(hù)起來(lái)更困難。
筆者基于AFNetworking封裝了一個(gè)網(wǎng)絡(luò)常用API類(lèi),猛點(diǎn)閱讀: 開(kāi)源HYBNetworking基于AFN封裝網(wǎng)絡(luò) 數(shù)據(jù)庫(kù)
不是每個(gè)App都使用到數(shù)據(jù)庫(kù)的,但是如果需要使用到數(shù)據(jù)庫(kù),我們還是需要使用第三方的。因?yàn)樵瓉?lái)的CoreData真不好用。當(dāng)前剛接觸的時(shí)候,F(xiàn)MDB是特別火的,當(dāng)然現(xiàn)在仍然有很多公司在使用,包括我們公司。
這里有一篇CSDN文章說(shuō)得不錯(cuò): http://blog.csdn.net/xyz_lmn/article/details/9312837 模型與字典互轉(zhuǎn)/自動(dòng)歸檔
從我開(kāi)發(fā)公司的App以來(lái),一直在尋找JSON與Model互轉(zhuǎn)的第三方庫(kù),因?yàn)槊看尉W(wǎng)絡(luò)取回?cái)?shù)據(jù)后再一個(gè)個(gè)解析取出來(lái)真的很麻煩很累。這里自然極力推薦的庫(kù)就是MJExtension。
這個(gè)庫(kù)簡(jiǎn)單易用,直接看一看文檔就明白怎么用了: https://github.com/CoderMJLee/MJExtension
當(dāng)然,后來(lái)出了個(gè)YYModel,筆者研究了一下,其實(shí)與MJExtension差不多,只是YYModel大部分都使用runtime最底層API,而MJExtension更多的是OC語(yǔ)法。在性能上,據(jù)說(shuō)YYModel要比MJExtension要高,當(dāng)然從原理上來(lái)分析應(yīng)該會(huì)高一些。
想試試YYModel?試試吧: YYModel 圖片下載
現(xiàn)在很多公司所開(kāi)發(fā)的App中使用了SDWebImage,但是個(gè)人覺(jué)得使用AFNetworking這套網(wǎng)絡(luò)庫(kù)就可以了,這套庫(kù)已經(jīng)提供了對(duì)圖片的下載和高效緩存。如果喜歡使用SDWebImage,可查看一下源代碼及使用文檔:
著名SDWebImage
事實(shí)上,本人現(xiàn)在直接使用AFNetworking的圖片下載及緩存功能,無(wú)須再添加一個(gè)三方庫(kù)。 提示HUD
說(shuō)到這個(gè)提示HUD,很多人都非常喜歡MBPRogressHUD,其下載地址: MBProggressHUD
但是,本人不太喜歡它,因?yàn)槭褂闷饋?lái)很麻煩。本人更推薦的是SVProgressHUD,以單例形式存活,任何時(shí)候直接調(diào)用,而且我們需要調(diào)用的api都是類(lèi)方法,直接調(diào)用即可。其下載地址為: SVProgressHUD 自動(dòng)布局
對(duì)于開(kāi)發(fā)是使用xib/storybard的同學(xué)可跳過(guò)。這里介紹的是純代碼的自動(dòng)布局,原生的代碼自動(dòng)布局是相當(dāng)困難的,寫(xiě)起來(lái)很麻煩而且也很難記住。因此,我們需要一個(gè)第三方庫(kù)對(duì)原生的約束api封裝成簡(jiǎn)單易用的接口給我們使用。
這里本人極力推薦Masonry,其下載地址為: 著名自動(dòng)布局Masonry
擴(kuò)展了自動(dòng)計(jì)算行高: 開(kāi)源HYBMasonryAutoCellHeight
如果是swift開(kāi)發(fā),推薦SnapKit,另外筆者基于SnapKit擴(kuò)展了一個(gè)自動(dòng)計(jì)算行高: HYBSnapkitAutoCellHeight開(kāi)源自動(dòng)算行高Swift版
不會(huì)用Masonry?看看筆者的14篇教程吧: Masonry純代碼自動(dòng)布局實(shí)戰(zhàn) 側(cè)滑菜單
對(duì)于使用側(cè)滑風(fēng)格的app,可使用MMDrawerController這套庫(kù),幾行代碼就可以實(shí)現(xiàn)了。其下載地址為: https://github.com/mutualmobile/MMDrawerController CoverFlow效果
我想最有名的CoverFlow效果的第三方庫(kù)就是iCarousel了。其下載地址: https://github.com/nicklockwood/iCarousel 日志
開(kāi)發(fā)App怎么能沒(méi)有日志呢?沒(méi)有日志,如何去查看記錄?現(xiàn)在特別火的日志庫(kù)是CocoaLumberjack,其下載地址: https://github.com/CocoaLumberjack/CocoaLumberjack 刷新
到目前為止,很多公司的App都采用了MJRefresh這個(gè)快速集成下拉刷新和上拉加載更多功能的庫(kù)。這個(gè)庫(kù)還支持自定義樣式,因此可根據(jù)需求定制風(fēng)格。其下載地址: https://github.com/CoderMJLee/MJRefresh 模糊效果
iOS7以后就有UIVisualEffect這個(gè)控件支持模糊效果。如果要支持iOS5.0以上版本,那就需要第三方庫(kù)來(lái)支持了。支持靜態(tài)、動(dòng)態(tài)模糊效果,繼承與UIView的模糊特效的FXBlurView就能滿(mǎn)足我們的需求。其下載地址: https://github.com/nicklockwood/FXBlurView 富文本
文字視圖開(kāi)源組件,是UILabel的替代元件,可以簡(jiǎn)單的方式展現(xiàn)渲染的屬性字符串。另外,還支持鏈接,不管是手動(dòng)還是使用UIDataDetectorTypes自動(dòng)把電話(huà)號(hào)碼、事件、地址以及其他信息變成鏈接。其下載地址: https://github.com/mattt/TTTAttributedLabel TabBarController
RDVTabBarController可以方便設(shè)置底部菜單的文字圖片,點(diǎn)擊效果,小紅點(diǎn)提示等等,但是沒(méi)有原生的UITabBar過(guò)渡效果,因此筆者不是很喜歡。其下載地址: https://github.com/robbdimitrov/RDVTabBarController 福利
最近看到這有一篇文章收集了很全的第三方庫(kù),上邊所推薦都是本人所用。點(diǎn)這里看更多第三方庫(kù): http://www.52codes.net/article/465.html 關(guān)注標(biāo)哥 聯(lián)系方式 關(guān)注 備注 合作聯(lián)系群 347363861 接項(xiàng)目、私活 iOS直播音視頻技術(shù) 256239496 標(biāo)哥博客iOS交流群 552095943(新) 標(biāo)哥博客iOS交流群 324400294(滿(mǎn))|494669518(滿(mǎn))|494669518(滿(mǎn))|250351140(滿(mǎn)) 微信公眾號(hào) iOSDevShares或者iOS開(kāi)發(fā)技術(shù)分享 新浪微博 @標(biāo)哥的技術(shù)博客 關(guān)注微博動(dòng)態(tài)
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注