iOS學習資源匯總(開源項目、第三方庫、技術博客等等)

前言

Github眾所周知,全球最大的同性社區交友網站,在這里你可以獲取任何你想要的,只要你想,只要Ta有。
從事開發幾年在Github上Star了不少好的東西,當然學到了更多,在此深深的膜拜下那些開源的大神。
切入正題,下面對自己使用過或者Star過的第三方框架整理下,便于日后查閱,也方便他人借鑒,如果大家有什么好的庫推薦,歡迎在本文下方評論,本篇文章不定時更新...

戳這里----->已上傳Github at 2016.01.01


他人整理開源組件列表

awesome-ios<----點開有驚喜

Awesome-Swift-Education<----點開有驚喜

TimLiu-iOS<----點開有驚喜

iOS第三方庫列表<----點開有驚喜


iOS學習資源


蘋果AppStore被拒理由大全<----點開有驚喜


開源項目源碼

以下是簡閱涉及到的幾個關鍵技術,關鍵字列出來方便大家有針對性的看源代碼:
全屏滑動(CWStackController)
網頁抓取(TFHpple + XPath + NSRegularExpression)

夜間模式(UIAppearance + NSNotification)
離線閱讀(NSURLProtocol + NSURLCache + CWObjectCache + SQLite3)
視頻播放(HTML5 + JavaScript)
另外,開發期間恰逢 Swift 面世,所以里面也有少量 Swift 代碼

部分獨立組件

SCPullRefresh
方便自定義下拉刷新和上拉加載動畫
SCNavigation
自定義 Navigation (NavigationBar相關以及NavigationController)所有元素完全自定義,通過 Pan 手勢來完成類似 iOS7 的手勢返回效果 。SCWeiboManager
對微博官方 SDK 的 block 封裝。 更加易用,配置更簡單。

個人認為,多閱讀優秀的源碼,對自己的水平提升還是很有幫助的,三人行必有我師


APP相關

想要在App Store中獲得更多評論的最佳方式是什么?想要回答這個問題,我缺乏切實數據,但如果必須猜一下的話,我會建議問問用戶。也許這樣做有點老套——大多開發者現在都有創建定制的應用內置alert。但是如果你沒有時間,或者不想從頭實現的話,最好用一下iRata。這個就是iRata——一個小型庫——你可以把它放入項目中,把問卷調查什么的都忘記吧,iRate會在恰當的時候為你解決這個問題。

同樣是提醒用戶為APP評分

還是提醒用戶評分

提示版本更新

操作指引框架 Swift編寫

啟動導航界面,很方便的集成

啟動界面進入主畫面動畫

字體相關的庫,設置字體樣式

FontAwesomeKit 提供一些簡單的助手類用來幫助在 iOS 上使用 FontAwesome。

收集崩潰日志,用戶操作信息等,解決線上崩潰問題的神器

首次啟動APP的新手指引

用這個庫可以在詢問用戶前,就告知用戶所需的系統權限,為用戶帶來更好的體驗。接受度更高—>更多活躍用戶->更高的留存率->數據更好->下載率更高

swift下會動的啟動頁。

自動布局

自動布局

自動布局

Swift布局框架 在代碼中純手工創建約束灰常痛苦,但幸運的是我們有了SnapKit,在board中用上它,你可以簡單直觀地編寫約束了

網絡請求

網絡請求 應該不會沒人用過吧

Alamofire是一個簡潔的網絡庫,用Swift語言編寫。你是否曾經使用過AFNetworking呢?Alamofire是它的小弟。更年輕更時尚,當然(AFNetworking是用Objective-C編寫的)

無疑是目前封裝得最完善的Socket庫了:支持異步TCP/UDP,支持GCD,Objective-C接口封裝。。目前沒有發現可以與之相比的同類產品

對 Alamofire的封裝,很是強大

基礎工具類以及Category

一個不錯的工具包,提供各種比如編碼、加密、字符串處理等等東西,還提供了一些不錯的自定義控件,并且文檔非常齊全

國外的一個大神寫的很好用的分類,比較齊全

最近很火的YY大神,應該不用多介紹了吧

為基礎類提供Block支持,很好用

很強大的日期工具類

針對Foundation的擴展

很是全面的一個擴展 iOS中的各種Objective-C Category, a collection of useful Objective-C Categories extending iOS Frameworks such as Foundation,UIKit,CoreData,QuartzCore,CoreLocation,MapKit Etc.

簡單方便的緩存

webView 離線緩存庫 好用

拼音解析,很好用

解壓縮

Chameleon是一個iOS的色彩框架。它運用現代化flat color將UIColor擴展地非常美觀。我們還可以通過它運用自定義顏色創建調色板。它還有很多功用,請瀏覽readme。如果你想要應用美觀的話,一定要把這個庫加到項目里。

很方便集成的tabBarController框架

展示通知圖標

大神模仿谷歌做的iOS原生特效控件

彈出框

很好很強大的彈出框,多種樣式滿足你的需求

一個簡單的彈出菜單

很方便的彈出框

里脊串的彈出框

模態彈出框,拖入兩個文件就可以集成

比較強大

長按出現復制粘貼等工具view

酷炫的通知欄,多種通知樣式,使用簡單

動畫

和Masonry類似,對核心動畫進行了封裝,鏈式動畫,強烈推薦

很強大不解釋

轉場動畫庫,跟著源碼能學習到很多

默默的膜拜下大神,這個庫很多APP都有使用到

看看demo你就知道干啥的了

用于展示Gif

點擊按鈕過渡動畫,很贊

使動畫在簡單性、可鏈接性與聲明性方面有所提高。

含有當前主流的幾種動畫框架,可以學習下源碼

很多酷炫的加載動畫,可以借鑒一下

文本相關

富文本demo

很強大的Label,使用人數較多

你曾經用過Slack iOS應用嗎?如果你在較大的軟件公司工作,也許會用過。對那些沒用過的人呢?—?Slack令人激動。用到Slack的應用也是這樣,尤其是用作極佳、定制的文本輸入控制時。這時你有了一個現成可用在應用中的代碼。自適應文本區域?試一下。手勢識別、自動填充、多媒體合并?試一下??焖賒rop-in解決方案?試一下。其他還想要什么?SlackTextViewController 可以替代 UITableViewController & UICollectionViewController。

展示HTML的label

Facebook出品

文本框會隨著輸入字數改變高度

效果非常炫的文本框

動效不錯,23333

為圖文混排提供了一個思路

便捷的為你的view 添加線條。。。。簡直福利啊

加載進度條

圓形加載進度條

webView 加載進度條 思路很好

MBProgressHUD 使用非常廣泛,網上很多基于ta的封裝

同上

和MBProgressHUD差不多

對MBProgressHUD的簡單封裝,比較實用

消息通知提醒框,好用
加載圖片

pinterest 出品 效果不錯

使用最為廣泛的加載圖片第三方庫

swift版本的SDWebImage

鍵盤類

IQKeyboardManager 有swift版本了。。。。

常用的UI聊天文本輸入框封裝

抽屜

ViewDeck 非常強大 可能需要根據自己的實際業務需求做出相應的改造

沒用過 聽說過

貌似不錯

安裝簡便,高度定制且對手勢識別良好。可以當做一個標準控件用在iOS SDK中。

NavigationBar

swift語言編寫 上下滑動時動態隱藏標題欄

導航欄顏色動態改變

Navigation的擴展,強烈推薦

ScrollView相關

nicklockwood 大神出品

自定義cell側滑

這是另一個常見于很多應用中的UI組件,蘋果應該考慮在標準的iOS SDK中加入一些類似的內容。Swipeable表格cell是這個pod的最佳描述,也是最好的。

瀑布流學習demo

很方便的集成全屏返回上一層界面

一款日歷控件,可以看看

DZNEmptyDataSet UITableView/UICollectionView 超類,當視圖沒有內容的時候用來展示空數據集。DXNEmptyDataSet 能自動工作,只需要確認 DZNEmptyDataSetSource 和用戶需要返回的數據。

WMPageController
是一個方便形成如同網易新聞首頁,控制器滑動翻頁效果的控制器

多種樣式的界面復用

MJ系列

json解析框架

刷新控件 MJ大神出品

Json解析

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#一鍵歸檔).一鍵歸檔

數據庫

據說很強大,還沒用過,有時間研究下

基本項目中使用的都是這個,支持多線程操作,不錯

圖表庫

各種各樣的圖表

iOS圖表庫!非常有用而且美觀

一款實用的下拉列表

框架相關

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和原生交互,那么就使用他吧

一個用來統一管理導航欄轉場以及當 push 或者 pop 的時候使動畫效果更加順滑的通用庫,并且同時支持豎屏和橫屏。你不用為這個庫寫一行代碼,所有的改變都悄然發生。

圖片處理以及展示相關

GPUImage是一個基于GPU圖像和視頻處理的開源iOS框架,提供各種各樣的圖像處理濾鏡,并且支持照相機和攝像機的實時濾鏡; 基于GPU的圖像加速,因此可以加速對實時攝像頭視頻、電影以及image的濾鏡和其它效果處理,并且能夠自定義圖像濾鏡。另外, GPUImage支持ARC

背景模糊
-MSSBrowse
模仿微信圖片點擊放大效果,很棒

圖片瀏覽器,非常好用

相冊選擇

類似微信的圖片選擇器

效果不錯的

swift下圖片處理庫

音頻/視頻

36氪開源的視頻播放器

豆瓣開源 DOUAudioStreamer 是 iOS 和 Mac 的基于核心音頻的流媒體音頻播放器。

效率很高、所占內存很小的在線流媒體(Audio Stream)播放引擎,支持 ShoutCast 和 IceCast 流媒體協議,以及可以暫停和恢復播放。具體具備以下特色:1. 效率很高,占用內存很?。m然是核心代碼是C ,但是OBJ調用沒有額外性能消耗);2. 支持 ShoutCast 和 IceCast 流媒體協議,以及標準的 HTTP 傳輸協議;3. 可以檢測流媒體的格式;4. 支持 ShoutCast metadata5. 支持暫停和恢復流媒體播放;6. 支持背景播放;7. 支持 ID3v2;8. 支持 Podcast RSS feeds

PHPHub開源播放器,默默點個贊

可定制性比較高的播放器

內購/推廣

應用內付費給我們提供了很多樣本代碼,而這個庫丟掉了那些代碼,將金錢交易相關的大多通用任務做了簡單的封裝。

應用推廣界面,填寫合作app的appleId即可

交叉推廣應用是你可以免費實現的最佳市場推廣策略之一。使用這個庫做起來非常簡單,不用都不可能——將TAPromotee加入你的podfile中,免費配置與享受更多下載吧。

IM相關

用于聊天App顯示消息的頁面,可以發送文本、聲音、圖片、視頻等消息(不過目前的Demo似乎僅支持輸入文本)。界面模仿微信App。

很強大的消息界面UI庫

存儲相關

便捷的使用keyChain存儲用戶名密碼等


Tip


學習的路上總是曲折的,每個人都是從菜鳥過來的,遇到問題總是希望能夠與他人溝通交流,而在各種群里問了問題就石沉大海,所以想建一個技術交流為主的群,遇到的問題可以記錄下來分享給他人,方便了自己,也造就了他人,不管怎樣,記錄點滴,但愿與君共勉

*QQ群號:527377492 *

Paste_Image.png
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,412評論 6 532
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,514評論 3 416
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事?!?“怎么了?”我有些...
    開封第一講書人閱讀 176,373評論 0 374
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,975評論 1 312
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,743評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,199評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,262評論 3 441
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,414評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,951評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,780評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,983評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,527評論 5 359
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,218評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,649評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,889評論 1 286
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,673評論 3 391
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,967評論 2 374

推薦閱讀更多精彩內容