IOS
facebook出品
Origami:此为 Facebook 推出的 Quartz Composer 的一个开源插件, 由其设计团队花费了 9 个月打造而成, 目的是为方便设计师快速构建原型, 以零代码完成复杂动画的合成和测试, 堪称神器
iOS UI框架,这个框架被用于Facebook自家的应用Paper中,能够提高UI的流畅性并缩短响应时间。
xctool:项目构建工具具有以下特性
- 能够作为Xcode.app运行相同的测试
- 构建输出和测试结果都是JSON格式的,使得我们不需要解析输出
- xctool只有在发现错误的时候才打印消息,而xcodebuild对每个源文件都会打印。
网络与数据
- RestKit:主要用于 iOS 上网络通信, 允许与 RESTful Web 服务交互, 常用于处理 API, 解析 JSON, 映射响应对象等操作, 简单易用, 方便你把所有精力都放在对数据的操作上
- fmdb:一个对 SQLite 进行封装的库, 使用起来方便, 简单
- Mantle:主要用来将 JSON 数据模型化为 Model 对象, 唱吧在前段时间也改用 Mantle 了.
- ObjectMapper:
swift
轻易转换Json
- Nocilla
- Overcoat
- MJExtension:转换速度快、使用简单方便的字典转模型框架
- AFNetworking
- YYCache
- NetworkEye
- RNCachingURLProtocol
- TMCache
- sskeychain:账号密码的存取
- Ono:序列化XML和HTML
- Reachability:Reachablity 是用于检测 iOS 设备网络环境的库
- CocoaAsyncSocket:一个功能强大、简单易用的异步 socket 通讯类库, 支持 TCP 和 UDP 协议, 可用于 Mac 和 iOS 设备上, 作者 Robbie Hanson 是 Deusty 的首席软件工程师
- jsonmodel:一个能迅速解析服务器返回的 Json 数据的库, 方便数据的类型转换
性能与分析
- dSYMTools
- ViewMonitor:快速测量
view
的位置 - dSYMTools
开源工具集合与资料
- YYKit:各种组件
- YYModel
- react-native-desktop
- trip-to-iOS
- SwiftGuide:这份指南汇集了Swift语言主流学习资源,并以开发者的视角整理编排。
图片处理
- GPUImage:IOS图片处理神器
- YLGIFImage:GIF
-
- FastImageCache:Path 公司出品的 iOS 库, 作者 Mallory Paine 是苹果前员工, 此类库适用于在滚动时快速显示图像, 高速持久是其最大的特点
- SDWebImage
- MWPhotoBrowser:A simple iOS photo and video browser with grid view, captions and selections
- BSImagePicker
- CTAssetsPickerController
- Nuke:Image loading, processing, caching and preheating
- ZLPhotoBrowser:方便易用的相册照片多选框架,支持预览快速多选;相册混合选择;自定义最大选择量及最大预览量
- FXBlurView:iOS 模糊背景类库, 可以方便的根据底层显示的状态生成模糊效果
排版与输入
- TPKeyboardAvoiding
- YYText:功能强大的 iOS 富文本编辑与显示框架。
- TYAttributedLabel
- MMMarkdown:
Markdown
转为html
- BonMot
- SlackTextViewController:Slack 推出的一款具有文字输入框高度自适应, 自动输入, 复制单元格内容等功能的解决方案
图表
app
- Yep
- NirZhihuDaily2.0:Swift精仿知乎日报iOS端
- CocoaChinaPlus:CocoaChina+客户端开源地址--陈奕龙
- leanchat-ios:用 LeanCloud 实时通信组件做的应用 LeanChat
- ESTMusicPlayer:ESTMusicPlayer 是基于 DOUAudioStreamer 开发的一款优雅简洁的音乐播放器.
- react-native-cx:React Native 实现的 GMTC 客户端,做的非常专业,非常棒
UI与工具
- FCUUID:获取UDID
- FlatUIKit:收集了很多扁平化 UI 的 iOS 组件, 方便使用
- Masonry:一个轻量级的布局框架, 同时支持 iOS 和 Mac OS X, 语法优雅, 帮助开发者快速适配不同分辨率的 iOS 设备
- tapkulibrary:作者是 Devin Ross, 这是在 iOS 上一款功能强大的 UI 效果类库, 可以实现多种酷炫的效果, 目前仍在更新中
- Canvas:无需编码实现牛逼的动画效果的库, 连设计师都可以快速上手
- appirater:一款用于提醒用户给你的 App 打分的工具
WebViewJavascriptBridge:一个方便使用 Objective-C 与 JavaScript 进行通信的第三方库, 支持消息发送, 接收, 消息处理器的注册与调用以及设置消息处理的回调
TPKeyboardAvoiding:下拉键盘在 iOS 移动文本字段的通用解决方案, 能够自动处理键盘弹出后出现遮挡到文本输入框的问题
- TabPageViewController:又一个可以滑动的 Tab 效果库,但是区别在于,这个可以循环滑
- RealReachability:网络判断库
- BarcodeScanner:一个二维码扫描工具
- iOS-System-Services:收集所有可用的设备信息的类
tableView
- SWTableViewCell:UITableViewCell 的子类, 实现了左右滑动显示信息视图并调出按钮
- SVPullToRefresh:一款只需一行代码便可集成上拉刷新和下拉加载的组件
开源项目集合
JSQMessagesViewController:多样的聊天框
TTTAttributedLabel:
UILable
改进版MJRefresh:下拉刷新
- JSPatch:JSPatch bridge Objective-C and Javascript using the Objective-C runtime. You can call any Objective-C class and method in JavaScript by just including a small engine. JSPatch is generally use for hotfix iOS App.
- ResearchKit
BlocksKit:开源的blocks工具包
BEMCheckBox:
checkBox
相关NJKWebViewProgress:WebView 加进度条
Neon:有用的
swift UI layout framework
ZLSwipeableView:
card
+手势
MaterialKit:使用
swift
实现Material design
StarWars.iOS:
viewController
过渡动画---奔溃成小颗粒RuntimeBrowser:Objective-C Runtime Browser, for Mac OS X and iOS
DGRunkeeperSwitch:switch control
DKNightVersion:主题切换
AMPopTip:自定义提示
Fluid-for-Sketch:创建自适应效果的Sketch 项目
- KKGestureLockView:手势解锁
FontAwesomeKit:Icon font library for iOS. Currently supports Font-Awesome, Foundation icons, Zocial, and ionicons.
DOPDropDownMenu-Enhanced:Drop down menu like we see on website for iPhone
- STPopup:弹出框* RETableViewManager:Powerful data driven content manager for UITableView.
多媒体
- 一分钟搭建直播服务端:视频直播解决方案
- WMPlayer:WMPlayer视频播放器,AVPlayer的封装,继承UIView,想怎么玩就怎么玩。支持播放mp4、m3u8、3gp、mov,网络和本地视频同时支持。全屏和小屏播放同时支持。
- SCRecorder:相机拍照,支持动画过滤、慢动作、段编辑
- kxmovie:基于
ffmpeg
的视频播放 - VKVideoPlayer
- KRVideoPlayer:类似Weico的播放器,支持竖屏模式下全屏播放
- mobileplayer-ios
- HTY360Player:A 360° video player for iOS.
框架
- RxSwift:函数响应式编程框架
- CYLTabBarController:快速开发
- nimbus:19. Nimbus 作者 Jeff 曾为 Facebook, Google 做过不少好东西, 也是 three20 的成员之一, three20 停更后, 他创造出这个框架来代替 three20, 文档齐全
- Bolts-ObjC:Bolts 是一个 Parse 和 Facebook 在内部使用的底层库, 方便移动开发
- PromiseKit:异步任务库
Loading
- MBProgressHUD:MBProgressHUD + Customizations http://www.bukovinski.com/
- M13ProgressSuite
- NVActivityIndicatorView
-
- SVProgressHUD:又一款轻量级的 iOS 第三方控件, 用于显示任务加载时的动画, 非常轻便, 容易使用
动画特效
JazzHands:IFTTT 开源的一个简单易用的关键帧基础动画框架, 可通过手势、scroll views, KVO, ReactiveCocoa 等方式来控制动画
Popping:基于 Facebook Pop 引擎的 iOS 动画库, 集合了很多动画效果
AwesomeMenu:该项目主要是使用 CoreAnimation 还原了 Path menu 的动画效果
- Euclid:动画跳转demo
- PullToBounce:Animated "Pull To Refresh" Library for UIScrollView.
- MTMaterialDelete
:一个菜单的路径动画
![](https://raw.githubusercontent.com/fdzsergio/SFFocusViewLayout/master/Screenshots/SFFocusViewLayout.gif)
! Shapes:Framework for drawing and animating shaped views on iOS