作者:Jisen 链接:http://www.jianshu.com/p/68e12b966d86 來源:简书之前做了OC的整理,这一篇是Swift的第三方资源库整理。同样的,有好的项目我就会加进来,并把更新说明写在文末。
更直观更方便的内容形式,请访问本文的GitBook地址:GitHub第三方资源库整理(Swift篇)。
或者可以访问GitHub地址:JYOSList
网络
- Alamofire:
http
网络请求事件处理的框架。- Moya:这是一个基于
Alamofire
的更高层网络请求封装抽象层。- Reachability.swift:用来检查应用当前的网络连接状况。
综合
- Perfect:swift的
服务器端
开发框架(针对于移动后端开发、网站和web应用程序开发)。- RxSwift: 函数响应式编程框架,是
ReactiveX
的swift版本,可以简化异步操作和事件/数据流。- Dollar:无需扩展任何内置对象就为Swift语言提供有效的函数式编程辅助方法,类似于Lo-Dash或JavaScript中的Underscore。
- MonkeyKing:社会化分享框架,支持分享
text
、url
、image
、audio
、file
到Alipay
、- 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:仿
- 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
等。