網路
- Alamofire:
http
網路請求事件處理的框架。 - Moya:這是一個基於
Alamofire
的更高層網路請求封裝抽象層。 - Reachability.swift:用來檢查應用當前的網路連線狀況。
綜合
-
Perfect:swift的
伺服器端
開發框架(針對於移動後端開發、網站和web應用程式開發)。 -
函式響應式程式設計框架,是
ReactiveX
的swift版本,可以簡化非同步操作和事件/資料流。 -
Dollar:無需擴充套件任何內建物件就為Swift語言提供有效的函數語言程式設計輔助方法,類似於Lo-Dash或JavaScript中的Underscore。
-
MonkeyKing:社會化分享框架,支援分享
text
、url
、image
、audio
、file
到WeChat
、QQ
、Alipay
、Weibo
。 -
OAuthSwift:國外主流網站OAuth授權庫。
-
R.swift:以一種優雅安全的方式使用資原始檔。
-
Design-Patterns-In-Swift:swift實現的各種設計模式。
-
Whisper:使用簡單、功能實用的訊息及應用通知元件。
-
Surge:
mattt
寫的效能加速框架,為數字訊號處理和影像處理提供高效能。
Animation
- Spring:
MengTo
寫的動畫框架,買過他的書《Design+Code》。 - EasyAnimation:主要應用於
UIView.animateWithDuration(_:, animations:...)
。 - IBAnimatable:主要使用於
Interface Builder
,不需要一行程式碼就可打造擁有炫酷動畫效果的UI介面。 - Advance:可應用於 iOS、 tvOS、 and OS X的動畫框架。
- PeekPop:使用3D touch 被引用的兩個動畫特性
peek
、pop
。
Transition
- StarWars.iOS:很炫酷的轉場動畫效果,檢視碎片化掉落。
其他動畫
- NumberMorphView:label數字變形過渡動畫,用於金額數字變動或者時間上面會非常nice!
- FillableLoaders:自定義的進度載入動畫。
資料處理
- SQLite.swift:用
swift
封裝的sqlite 3
操作框架。
解析、轉換
- SwiftyJSON:很好、很方便地處理
JSON
資料。 - Argo:函式式
json
解析轉換庫。 - ObjectMapper:把
json
物件對映為model
物件。
儲存
- SwiftyUserDefaults:對
NSUserDefaults
的封裝,讓NSUserDefaults
使用更簡單。 - KeychainAccess:使用
Keychain
非常方便。
其他
- SwiftString:關於swift中
string
處理的擴充套件,有between(left, right)
、camelize()
、capitalize()
、count(string)
、decodeHTML()
、contains(substring)
等。 - ReSwift:單向資料流處理,靈感來自於redux。
Category、Extension
- ExSwift: 包含一組標準型別和類的Swift擴充套件。
載入指示、HUD
- NVActivityIndicatorView:很多漂亮的載入指示器。
- FillableLoaders:自定義的進度載入器,有
waves
、plain
、spike
、rounded
等效果。
Refresh
- DGElasticPullToRefresh:有彈性效果的下拉重新整理控制元件。
圖表、繪畫
- Charts:非常好的圖表框架,類似於
MPAndroidChart
。 - PNChart-Swift:
周凱文
寫的PNChart的swift版。
AutoLayout
- SnapKit:自動佈局框架,類似於Masonry。(推薦)
- Cartography:自動佈局DSL。
- Neon:一款關於UI自動佈局的框架。
- Stevia:自動佈局。
- TZStackView:
UISatckView
的代替品,支援iOS7+。
UIKit
- Chatto:輕量級構建聊天應用的框架。
- Koloda:卡片檢視,而且滑動檢視有滑動卡片一樣的動畫效果。
- ImagePicker:圖片選擇器。
- MaterialKit:關於
Material design
做的一系列UI元件。 - Material:集
Animation
和UI
與一身,還有Icon
、Color
等元素,使用這個庫就可以打造一個漂亮的UI介面並具有優雅的動畫效果。
引導頁、新手教程
- IFTTT/RazzleDazzle:整合引導頁,具有不錯的動畫效果。
- Instructions:應用於操作指南、新手教程。
Tab Bar
- Animated Tab Bar:
Ramotion出品
,給tabbar items
各單元新增動畫效果。 - Adaptive Tab Bar:同樣的
Ramotion出品
,提供適合的Tab Bar。
Table View
- Eureka:通過詳細的對映,建立動態的
table-view
forms。 - folding-cell:摺疊的cell效果,動畫很nice。
Alert、Sheet
- SCLAlertView-Swift:不錯的一款
alert view
。 - SweetAlert-iOS:alert。
Button
- DOFavoriteButton:有動畫效果的
button
,適用於收藏
、喜歡
、點贊
等。 - hamburger-button: hamburger button,動畫過渡不錯。
Switch
- paper-switch:
Ramotion出品
,turned on
覆蓋父檢視的動畫效果。
Label
- LTMorphingLabel:擁有很多種特性的label。
- ActiveLabel.swift:支援
Hashtags
、Mentions
、Links
響應事件處理。
TextField
- TextFieldEffects:具有非常多、非常nice的輸入框檢視。
- PhoneNumberKit:專門針對電話號碼格式做的一個輸入框,很贊。
- SkyFloatingLabelTextField:類似於
OC
的JVFloatLabeledTextField,編輯就會出現浮動的提示label。 - FloatLabelFields:類似於
SkyFloatingLabelTextField
。
TextView
- NextGrowingTextView:取自於HPGrowingTextView,文字輸入檢視,對於訊息編輯非常有用。
Font、Color
- Hue:整合
color
功用的庫,使用的是hex
顏色值。
CoreText、AttributeText
- TextAttributes:封裝
NSAttributedString
的框架,讓attributed strings
處理更加簡單,而且是鏈式結構,看起來更加直觀。
Image
圖片載入、快取
- Kingfisher:
喵神王巍
寫的一款關於圖片下載、快取的框架,靈感取自於SDWebImage。 - HanekeSwift:輕量帶快取高效能圖片載入元件。
Gif
- Gifu:載入
gif
的框架,表現良好。 - JWAnimatedImage:載入
gif
和apng
的引擎,低記憶體和cpu消耗。
特殊效果
- Filterpedia:給圖片加濾鏡效果,有很多種濾鏡。
- Toucan:圖片處理,支援重設尺寸、裁剪、風格化等
Menu
- FlowingMenu:很有意思的一個
menu
,具有平滑的彈簧效果,且手勢拖動動畫特別有趣。 - ENSwiftSideMenu:手勢側滑
menu
。 - CircleMenu:簡單、優雅的一款
circle menu
,有不錯的動畫效果。
Page Menu
- PageMenu:滑動出現不同分頁的一個
pagemenu
,用於不同狀態分頁效果上是很好的選擇。 - XLPagerTabStrip:功能同上,類似於
android
的PageTabStrip
。
測試
日誌、Log
工具、外掛
- Carthage:包管理工具,類似於
CocoaPod
。 - swift-package-manager:同樣的,包管理工具。
- SwiftLint: 一個用於檢查 Swift 程式設計風格和約定的試驗性工具。
其他
- TSWeChat:仿
Wechat
。 - FlappySwift:遊戲
flappy bird
的swift實現。
OCR
- SwiftOCR:ocr影像識別庫。
Asynchronous
- PromiseKit:能提供強大的 iOS 開發非同步功能,非常容易使用。
- Async:關於GCD非同步分發的語法糖。
KVO
- Observable-Swift:用於kvo的庫。
Permission
- PermissionScope:統一許可管理。(推薦)
- Permission:統一管理iOS系統的許可,比如
相機
、相片
、定位
等。
App內購
- SwiftyStoreKit:封裝的輕量級的APP內購框架。
Bluetooth
- BluetoothKit:使用藍芽更方便。
App間跳轉、DeepLink
- Appz:非常方便地實現App間跳轉和DeepLink。
狀態機
- SwiftTask:用Swift編寫的狀態機,綜合了 Promise + progress + pause + cancel,使用SwiftState。
演算法以及資料結構
- swift-algorithm-club:swift中的演算法以及資料結構,還有解釋說明。
開源APP
- Yep:
周凱文
團隊開源的一個社交APP,對於學習swift開發整個專案非常有價值。
資料、資源
- iOS-9-Sampler:關於iOS9新特性的所有demo。
- iOS9-day-by-day:
day-by-day
系列相信很多人都很熟悉,主要介紹一些新特性、新框架的使用。 - 30DaysofSwift:作者
Allen Wang
是一名產品設計師,這是他學習swift
的專案,在dribbble上看到過他的設計作品:openallen,挺不錯的。 - SwiftGuide:這份指南匯集了Swift語言主流學習資源,並以開發者的視角整理編排。
- Awesome-Swift-Education:swift學習資源整理。
- awesome-swift:swift資源大合集,覆蓋了幾乎所有方面。
- awesome-ios:iOS開發資源大整合,包括
OC
、Swift
,涉及到frameworks
、libraries
、tutorials
、xcode plugins
、components
等。