前言
Github眾所周知,全球最大的同性社區交友網站,在這里你可以獲取任何你想要的,只要你想,只要Ta有。 從事開發幾年在Github上Star了不少好的東西,當然學到了更多,在此深深的膜拜下那些開源的大神。 切入正題,下面對自己使用過或者Star過的第三方框架整理下,便於日后查閱,也方便他人借鑒,如果大家有什么好的庫推薦,歡迎在本文下方評論,本篇文章不定時更新...
戳這里----->已上傳Github at 2016.01.01
他人整理開源組件列表
awesome-ios<----點開有驚喜
Awesome-Swift-Education<----點開有驚喜
TimLiu-iOS<----點開有驚喜
iOS第三方庫列表<----點開有驚喜
iOS學習資源
- iOS9-day-by-day
- iOS8-day-by-day
- iOS9AdaptationTips iOS9適配
- iOS開發最佳實踐
- iOS學習資源 包括WWDC心得等
- SwiftGuide swift語言指南
- 中文版Apple官方Swift教程
- Git教程
- iOS開源APP列表
- iOS博客文章列表
- Design-Patterns-In-Swift
- awesome-swift
- iOS開發學習筆記 入門必看
- iOS學習筆記 推薦
蘋果AppStore被拒理由大全<----點開有驚喜
開源項目源碼
- PHPHub客戶端
- 仿寫知乎日報
- 高仿美團1
- 高仿美團2
- 高仿城覓
- SegmentFault客戶端
- Monkey
- 高仿網易
- 高仿豆瓣
- 碼農周刊
- Uber歡迎頁
- Tropos
- MVVM架構的計算器
- 網易新聞
- 簡閱 >以下是簡閱涉及到的幾個關鍵技術,關鍵字列出來方便大家有針對性的看源代碼: 全屏滑動(CWStackController) 網頁抓取(TFHpple + XPath + NSRegularExpression) 夜間模式(UIAppearance + NSNotification) 離線閱讀(NSURLProtocol + NSURLCache + CWObjectCache + SQLite3) 視頻播放(HTML5 + JavaScript) 另外,開發期間恰逢 Swift 面世,所以里面也有少量 Swift 代碼
- VVeboTableViewDemo 列表優化
- ECMobile 手機商城
- 閱讀器
- 高仿下廚房
- v2ex 客戶端 >部分獨立組件 SCPullRefresh 方便自定義下拉刷新和上拉加載動畫 SCNavigation 自定義 Navigation (NavigationBar相關以及NavigationController)所有元素完全自定義,通過 Pan 手勢來完成類似 iOS7 的手勢返回效果 。SCWeiboManager 對微博官方 SDK 的 block 封裝。 更加易用,配置更簡單。
- watch開源項目
- 熱門標簽
- swift 天氣
- 模仿微信二維碼掃描
個人認為,多閱讀優秀的源碼,對自己的水平提升還是很有幫助的,三人行必有我師
APP相關
- iRate >想要在App Store中獲得更多評論的最佳方式是什么?想要回答這個問題,我缺乏切實數據,但如果必須猜一下的話,我會建議問問用戶。也許這樣做有點老套——大多開發者現在都有創建定制的應用內置alert。但是如果你沒有時間,或者不想從頭實現的話,最好用一下iRata。這個就是iRata——一個小型庫——你可以把它放入項目中,把問卷調查什么的都忘記吧,iRate會在恰當的時候為你解決這個問題。
- appirate >同樣是提醒用戶為APP評分
- UAAppReviewManager >還是提醒用戶評分
- iVersion >提示版本更新
- Instructions >操作指引框架 Swift編寫
- Onboard >啟動導航界面,很方便的集成
- CoreLaunch >啟動界面進入主畫面動畫
- BonMot >字體相關的庫,設置字體樣式
- FontAwesomeKit >FontAwesomeKit 提供一些簡單的助手類用來幫助在 iOS 上使用 FontAwesome。
- Bugtags >收集崩潰日志,用戶操作信息等,解決線上崩潰問題的神器
- JMHoledView >首次啟動APP的新手指引
- PermissionScope >用這個庫可以在詢問用戶前,就告知用戶所需的系統權限,為用戶帶來更好的體驗。接受度更高—>更多活躍用戶->更高的留存率->數據更好->下載率更高
- Presentation >swift下會動的啟動頁。
自動布局
- Masonry >自動布局
- PureLayout >自動布局
- SnapKit >Swift布局框架 在代碼中純手工創建約束灰常痛苦,但幸運的是我們有了SnapKit,在board中用上它,你可以簡單直觀地編寫約束了
網絡請求
- AFNetworking >網絡請求 應該不會沒人用過吧
- Alamofire >Alamofire是一個簡潔的網絡庫,用Swift語言編寫。你是否曾經使用過AFNetworking呢?Alamofire是它的小弟。更年輕更時尚,當然(AFNetworking是用Objective-C編寫的)
- CocoaAsyncSocket >無疑是目前封裝得最完善的Socket庫了:支持異步TCP/UDP,支持GCD,Objective-C接口封裝。。目前沒有發現可以與之相比的同類產品
- RxAlamofire >對 Alamofire的封裝,很是強大
基礎工具類以及Category
- sstoolkit >一個不錯的工具包,提供各種比如編碼、加密、字符串處理等等東西,還提供了一些不錯的自定義控件,並且文檔非常齊全
- BFKit OC版本
- BFKit Swift版本 >國外的一個大神寫的很好用的分類,比較齊全
- YYKit >最近很火的YY大神,應該不用多介紹了吧
- BlocksKit >為基礎類提供Block支持,很好用
- DateTools >很強大的日期工具類
- FlatUIKit >針對Foundation的擴展
- iOS-Categories >很是全面的一個擴展 iOS中的各種Objective-C Category, a collection of useful Objective-C Categories extending iOS Frameworks such as Foundation,UIKit,CoreData,QuartzCore,CoreLocation,MapKit Etc.
- RENCache >簡單方便的緩存
- RNCachingURLProtocol >webView 離線緩存庫 好用
- PinYin4Objc >拼音解析,很好用
- ZipArchive >解壓縮
- Chameleon >Chameleon是一個iOS的色彩框架。它運用現代化flat color將UIColor擴展地非常美觀。我們還可以通過它運用自定義顏色創建調色板。它還有很多功用,請瀏覽readme。如果你想要應用美觀的話,一定要把這個庫加到項目里。
- CYLTabBarController >很方便集成的tabBarController框架
- RKNotificationHub >展示通知圖標
- Material-Controls-For-iOS >大神模仿谷歌做的iOS原生特效控件
彈出框
- TYAlertController >很好很強大的彈出框,多種樣式滿足你的需求
- JKPopMenuView >一個簡單的彈出菜單
- STPopup >很方便的彈出框
- MMPopupView >里脊串的彈出框
- KGModal >模態彈出框,拖入兩個文件就可以集成
- NYAlertViewController >比較強大
- MJPopupViewController
- QBPopupMenu >長按出現復制粘貼等工具view
- CWStatusBarNotification >酷炫的通知欄,多種通知樣式,使用簡單
動畫
- JHChainableAnimations >和Masonry類似,對核心動畫進行了封裝,鏈式動畫,強烈推薦
- Canvas >很強大不解釋
- VCTransitionsLibrary >轉場動畫庫,跟着源碼能學習到很多
- iCarousel >默默的膜拜下大神,這個庫很多APP都有使用到
- tapkulibrary >看看demo你就知道干啥的了
- YLGIFImage >用於展示Gif
- TBIconTransitionKit >點擊按鈕過渡動畫,很贊
- Spring >使動畫在簡單性、可鏈接性與聲明性方面有所提高。
- awesome-ios-animation >含有當前主流的幾種動畫框架,可以學習下源碼
- FeSpinner >很多酷炫的加載動畫,可以借鑒一下
文本相關
- DTCoreText
- M80AttributedLabel >富文本demo
- TTTAttributedLabel >很強大的Label,使用人數較多
- SlackTextViewController > 你曾經用過Slack iOS應用嗎?如果你在較大的軟件公司工作,也許會用過。對那些沒用過的人呢?—?Slack令人激動。用到Slack的應用也是這樣,尤其是用作極佳、定制的文本輸入控制時。這時你有了一個現成可用在應用中的代碼。自適應文本區域?試一下。手勢識別、自動填充、多媒體合並?試一下。快速drop-in解決方案?試一下。其他還想要什么?SlackTextViewController 可以替代 UITableViewController & UICollectionViewController。
- RTLabel >展示HTML的label
- (Shimmer)[https://github.com/facebook/Shimmer] >Facebook出品
- CSGrowingTextView >文本框會隨着輸入字數改變高度
- LTMorphingLabel >效果非常炫的文本框
- TextFieldEffects >動效不錯,23333
- DDRichText >為圖文混排提供了一個思路
- BMLine >便捷的為你的view 添加線條。。。。簡直福利啊
加載進度條
- DACircularProgress >圓形加載進度條
- NJKWebViewProgress >webView 加載進度條 思路很好
- MBProgressHUD >MBProgressHUD 使用非常廣泛,網上很多基於ta的封裝
- SVProgressHUD >同上
- Toast >和MBProgressHUD差不多
- LCProgressHUD >對MBProgressHUD的簡單封裝,比較實用
-
消息通知提醒框,好用 加載圖片
-
pinterest 出品 效果不錯
- SDWebImage >使用最為廣泛的加載圖片第三方庫
- AlamofireImage >swift版本的SDWebImage
鍵盤類
- DAKeyboardControl
- IQKeyboardManager >IQKeyboardManager 有swift版本了。。。。
- TPKeyboardAvoiding
- RDRStickyKeyboardView >常用的UI聊天文本輸入框封裝
抽屜
- ViewDeck >ViewDeck 非常強大 可能需要根據自己的實際業務需求做出相應的改造
- MMDrawerController >沒用過 聽說過
- SWRevealViewController >貌似不錯
- MSDynamicsDrawerViewController
- PKRevealController >安裝簡便,高度定制且對手勢識別良好。可以當做一個標准控件用在iOS SDK中。
NavigationBar
- AMScrollingNavbar >swift語言編寫 上下滑動時動態隱藏標題欄
- LTNavigationbar >導航欄顏色動態改變
- JZNavigationExtension >Navigation的擴展,強烈推薦
ScrollView相關
- SwipeView >nicklockwood 大神出品
- SWTableViewCell >自定義cell側滑
- MGSwipeTableCell >這是另一個常見於很多應用中的UI組件,蘋果應該考慮在標准的iOS SDK中加入一些類似的內容。Swipeable表格cell是這個pod的最佳描述,也是最好的。
- CHTCollectionViewWaterfallLayout >瀑布流學習demo
- FDFullscreenPopGesture >很方便的集成全屏返回上一層界面
- PDTSimpleCalendar >一款日歷控件,可以看看
- DZNEmptyDataSet >DZNEmptyDataSet UITableView/UICollectionView 超類,當視圖沒有內容的時候用來展示空數據集。DXNEmptyDataSet 能自動工作,只需要確認 DZNEmptyDataSetSource 和用戶需要返回的數據。
- WMPageController >WMPageController 是一個方便形成如同網易新聞首頁,控制器滑動翻頁效果的控制器
- TYSlidePageScrollView >多種樣式的界面復用
MJ系列
- MJExtension >json解析框架
- MJRefresh >刷新控件 MJ大神出品
Json解析
- Reflect >swift下模型解析
.類反射
[](https://github.com/CharlinFeng/Reflect/blob/master/README_CN.md#一鍵字典轉模型).一鍵字典轉模型
[](https://github.com/CharlinFeng/Reflect/blob/master/README_CN.md#一鍵模型轉字典).一鍵模型轉字典
[](https://github.com/CharlinFeng/Reflect/blob/master/README_CN.md#一鍵plist轉模型).一鍵plist轉模型
[](https://github.com/CharlinFeng/Reflect/blob/master/README_CN.md#一鍵歸檔).一鍵歸檔
數據庫
圖表庫
- PNChart >各種各樣的圖表
- ios-charts >iOS圖表庫!非常有用而且美觀
- DOPDropDownMenu >一款實用的下拉列表
框架相關
-
ReactiveCocoa(簡稱為RAC ),是由Github開源的一個應用於iOS和OS開發的新框架,Cocoa是蘋果整套框架的簡稱,因此很多蘋果框架喜歡以Cocoa結尾。在我們iOS開發過程中,經常會響應某些事件來處理某些業務邏輯,例如按鈕的點擊,上下拉刷新,網絡請求,屬性的變化(通過KVO)或者用戶位置的變化(通過CoreLocation)。但是這些事件都用不同的方式來處理,比如action、delegate、KVO、callback等。 其實這些事件,都可以通過RAC處理,ReactiveCocoa為事件提供了很多處理方法,而且利用RAC處理事件很方便,可以把要處理的事情,和監聽的事情的代碼放在一起,這樣非常方便我們管理,就不需要跳到對應的方法里。非常符合我們開發中高聚合,低耦合的思想。
-
使用JavaScript調用任何Objective-C的原生接口,獲得腳本語言的能力:動態更新APP,替換項目原生代碼修復bug
-
nimbus iOS框架 three20停止更新后的替代品
-
BeeFramework是一款iOS平台的MVC應用快速開發框架,使用Objective-C開發。 其早期原型曾經被應用在QQ空間 、QQ游戲大廳 等多款精品APP中。 BeeFramework 從根本上解決了iOS開發者長期困擾的各種問題,諸如:分層架構如何設計,層與層之間消息傳遞與處理,網絡操作及緩存,異步及多線程,以及適配產品多變的UI布局需求。
-
如果你需要JS和原生交互,那么就使用他吧
圖片處理以及展示相關
- GPUImage >GPUImage是一個基於GPU圖像和視頻處理的開源iOS框架,提供各種各樣的圖像處理濾鏡,並且支持照相機和攝像機的實時濾鏡; 基於GPU的圖像加速,因此可以加速對實時攝像頭視頻、電影以及image的濾鏡和其它效果處理,並且能夠自定義圖像濾鏡。另外, GPUImage支持ARC
- FXBlurView >背景模糊
- IDMPhotoBrowser >圖片瀏覽器,非常好用
- AGImagePickerController >相冊選擇
- DNImagePicker >類似微信的圖片選擇器
- JFImagePickerController >效果不錯的
- Nuke >swift下圖片處理庫
音頻/視頻
- KRVideoPlayer >36氪開源的視頻播放器
- DOUAudioStreamer >豆瓣開源 DOUAudioStreamer 是 iOS 和 Mac 的基於核心音頻的流媒體音頻播放器。
- FreeStreamer >效率很高、所占內存很小的在線流媒體(Audio Stream)播放引擎,支持 ShoutCast 和 IceCast 流媒體協議,以及可以暫停和恢復播放。具體具備以下特色:1. 效率很高,占用內存很小(雖然是核心代碼是C ,但是OBJ調用沒有額外性能消耗);2. 支持 ShoutCast 和 IceCast 流媒體協議,以及標准的 HTTP 傳輸協議;3. 可以檢測流媒體的格式;4. 支持 ShoutCast metadata5. 支持暫停和恢復流媒體播放;6. 支持背景播放;7. 支持 ID3v2;8. 支持 Podcast RSS feeds
- ESTMusicPlayer >PHPHub開源播放器,默默點個贊
- VKVideoPlayer >可定制性比較高的播放器
內購/推廣
- IAPHelper >應用內付費給我們提供了很多樣本代碼,而這個庫丟掉了那些代碼,將金錢交易相關的大多通用任務做了簡單的封裝。
- DAAppsViewController >應用推廣界面,填寫合作app的appleId即可
- TAPromotee >交叉推廣應用是你可以免費實現的最佳市場推廣策略之一。使用這個庫做起來非常簡單,不用都不可能——將TAPromotee加入你的podfile中,免費配置與享受更多下載吧。
IM相關
- MessageDisplayKit >用於聊天App顯示消息的頁面,可以發送文本、聲音、圖片、視頻等消息(不過目前的Demo似乎僅支持輸入文本)。界面模仿微信App。
- JSQMessagesViewController >很強大的消息界面UI庫
存儲相關
- sskeychain >便捷的使用keyChain存儲用戶名密碼等
