一些好用的Swift三方框架
最近在学习Swift开发,所以网上找一些好用的三方框架加以记录
网络
Alamofire:http
网络请求事件处理的框架。
Moya:这是一个基于Alamofire
的更高层网络请求封装抽象层。
Reachability.swift:用来检查应用当前的网络连接状况。
综合
Perfect:swift的服务器端
开发框架(针对于移动后端开发、网站和web应用程序开发)。
RxSwift:
函数响应式编程框架,是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)
等。
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
GPUImage2:GPUImage的Swift版,GPU加速image
和video
的处理。
图片加载、缓存
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
。
测试
Quick:测试框架,支持Swift
和OC
,灵感来自于 RSpec, Specta, and Ginkgo。
Sleipnir:BDD测试框架,灵感来自于OC
写的cedar。
日志、Log
XCGLogger:功能完整的日志管理库。
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
等。