iOS 开发者资源大全
由于内容比较长,GitHub项目首页文档显示不完整,完整版请点击 Github的这个地址:https://github.com/kechengsou/awesome-ios/blob/master/README.md
本文档针对市面上几乎所有和 iOS 开发相关的资源文档进行重新整理、融合和补充,更适合国内开发者。
文档内容包含了数十套教程、数千个框架、不计其数的工具、网站、资料等等,目前总计 4600+,涵盖了和 iOS 学习、日常工作中相关的方方面面,不管是 iOS 新手、还是老手,都是值得收藏的一个资源文档。
对于初学者来说,可以先款速浏览一下该文档,先对 iOS 整个生态提前有个完整的印象,打开眼界,对于今后的学习、工作能节省很多时间,少走一些弯路。
对于老手,本文对内容排版也做了优化,便于查找,对于 github 开源项目,也将 Star 标注出来,以便于筛选,对于支持 Swift 项目也做了相应标记。
申请收录,纠错,意见与建议,请到 issues 提交,也同时欢迎您的贡献。
您的 ✩ Star 是我们持续维护的最大动力!
更新时间 | 涵盖资源数 | Github 地址 | PDF下载 | 带目录 HTML 地址 |
---|---|---|---|---|
2020-06-01 | 4628 | 下载 | 下载 | 访问 |
目录
- iOS 开发者资源大全
- iOS 学习资料
- Objective-C 学习资料
- Swift 学习资料 * Swift 中文教程 * Swift 英文教程 * Swift 中高级教程/资料 * Swift 其他资料
- iOS 基础组件教程、学习资料
- SwiftUI 教程
- React Native/混合应用
- iOS 工程师的通用技能
- 架构、框架、模式
- 代码规范/APP质量
- 数据存储
- 文件操作
- 数据结构和算法
- 时间和日期库处理
- 工具类/语法增强
- 布局工具/自动布局
- 数学运算工具
- 正则表达式
- UI组件
- UI 设计资源
- UI 套件资源
- iOS UI Template/模版
- Prototyping/原型
- Activity Indicator/动作指标器控件/进度条
- ProgressView/进度条
- Alert & Action Sheet/告警框/提示框/对话框
- Popup/弹出框
- Badge/徽章/小红点
- Button/按钮
- Segmented Control/分段切换按钮/节选器
- Switch/开关按钮
- Calendar/日历控件
- Timeline/时间线
- Cards/卡片控件
- Form & Settings/表单及设置控件
- Label/文本标签控件
- 搜索框
- Menu/菜单控件/侧滑菜单/抽屉
- Navigation Bar/导航控件
- PickerView/选择器
- 下拉刷新组件
- Rating Stars/评分组件
- ScrollView/滚动视图组件
- 轮播组件
- Slider/滑块
- Status Bar/状态栏
- Stepper/步进控件
- TabBar/选项卡
- TableView/表格/列表
- CollectionView/集合视图
- Tag/标签
- TextField & TextView/文本域/文本处理
- page
- UIPageControl/分页控制器
- Splash/启动页/引导页/新手引导
- 场景类组件
- 主题
- Keyboard/键盘
- WebView/浏览器视图
- 其他开源 UI 组件/工具
- 文本处理
- 地图
- 图形/绘图工具
- 图表
- 动画、转场效果
- 颜色
- 字体/图标
- 手势
- 本土化工具
- 通知/推送/消息/IM
- 网络
- 数据解析
- 并发/调度/异步/多线程
- 页面路由/App 路由
- 多媒体功能
- 桥接
- 授权、权限
- AR/ARKit
- VR、虚拟现实
- 硬件相关
- 卡包/Passbook/钱包
- Payments/支付
- 区块链
- 游戏相关
- 函数式、响应式编程
- 反射
- Code Injection/代码注入
- Dependency Injection/依赖注入(IoC或切面)
- 安全
- 机器学习、人工只能相关
- 日志
- 调试
- 测试
- 性能、优化
- Objective-C runtime 运行时
- SDK
- APP 内开源许可列表参考
- 项目创建/安装
- 包管理 / 依赖管理
- 部署/打包/分发
- 操作辅助框架
- App Store/Apple 应用商店/上架
- Xcode
- 开发工具
- 网站、社区、博客、资讯站等资源
- 书籍、资料
- 面试/找工作
- 移动端综合服务商
- 数据分析、统计服务/SDK
- iOS 非手机设备资料
- 其他资源列表
- 程序员必备工具
iOS 学习资料
iOS 中文教程
- iOS 免费视频教程 - 课程搜
- 《iOS 教程》 - 基于 Objective-C
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
iOS开发60分钟入门 | ★6.3k | |
iOS-Share | ★107 | 有不少 iOS 相关的 PDF 文档。 |
入门建议:
- iOS 开发入门 - 知乎上入门相关建议。
- 如何才能系统的学习 iOS 开发,理解一些规则和深层次的机制原理?
- 没有 C 和 Objective-C 基础如何快速学习 iOS 开发?
- iOS 开发怎么入门?
- iOS 开发入门需要学习哪些知识,从一无所知到精通需要多长时间?
- 12 岁如何入门 iOS 编程?
- 编程零基础如何学习 Swift
英文学习资料
包括教程、网站、社区、PPT等。
- Apple Developer Documentation(英) - 苹果官方开发者文档,比较权威。
- 苹果官方教程 - Start Developing with iOS - 苹果官方教程.
- Apple - Object-Oriented Programming with Objective-C
- Apple - Programming with Objective-C
- CodeProject - iPhone 和 iOS 开发入门。
- Lifehacker - 我想编写iOS应用,我从哪里开始?
- Ray Wenderlich - 学习iOS应用编码。
- Stanford - Developing iOS 7 Apps for iPhone and iPad
- Stanford - Developing iOS 10 Apps with Swift - 目前的版本是iOS11+Swift,基于 iOS 10 的
- Stanford - Developing iOS 11 Apps with Swift - Stanford 在iTunes U上的教程,目前的版本是 iOS11 + Swift。
- Swifteducation - Teaching App Development with Swift
- Udacity - Intro to iOS App Development with Swift
- iOS 13 & Swift 5 - The Complete iOS App Development Bootcamp - udemy 的课程
- AppCoda
- Tutorials Point
- Code with Chris
- Cocoa with Love
- raywenderlich.com - 这对 iOS 开发者(以及游戏开发者)的教程。
- Mike Ash
- Big Nerd Ranch
- Tuts+
- Treehouse's iOS Courses and Workshops - 适用于 Objective-C 和 Swift的初学者和高级开发人员的主题列表。
- Cocoa Dev Central
- Use Your Loaf
- Realm Academy
- LearnAppMaking - LearnAppMaking 帮助开发者学习如何构建,运行、以及运营的网站。
- DaddyCoding - iOS教程,从初学者到高级。
- Cocoa is my Girlfriend
- RAYWENDERLICH - 开发者和爱好者的教程。
- Big Nerd Ranch
- iOS-Blog
- Use Your Loaf
- iOS Developer Tips - 针对 ios 开发者的网站,包括 代码,贴士,技巧等。
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
iOS8-day-by-day | ★2.7k / Y | |
iOS9-day-by-day | ★1.4k / Y | |
iOS-Learning-Materials | ★1.1k | 精心策划的文章、网络资源、教程和代码库列表,可以帮助您深入了解 iOS,学习 iOS 开发的方方面面,内容很全。 |
Conferences.digital | ★752 / Y | Conferences.digital 是一个 MacOS 上的应用,可以免费观看你关注的开发者会议内容。 |
iOS 其他学习资料
中文资料:
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
iOS9AdaptationTips iOS9适配 | ★4.5k | |
iOS学习资源 包括WWDC心得等 | ★2.7k | |
iOS开发学习笔记 入门必看 | ★1.2k | |
iOS开发最佳实践 | ★989 | |
iOS博客文章列表 | ★156 | |
iOS各种学习的资料 | ★98 | pdf电子书、实例代码等等。 |
iOS开发参考资料 | ★84 | iOS开发参考资料,收录内容不少,但相对比较陈旧。 |
iOS中文文档及精品资源 | ★20 | |
iOS_Resource | 一些 ios 学习资料,文章居多。 |
其他聚合资料:
地址 | Stars/Siwft | 简介 |
---|---|---|
awesome-iOS-blog-article | ★292 | iOS相关的,blog文章合集。 |
Flawless-iOS | ★192 | 一组关于iOS方方面面的教程集合(英文)。 |
iOS-Learning-Resources | ★100 | 一些iOS的学习资源(英文) |
Awesome iOS Resource | ★57 | 一些iOS文章,会议资料的集合,部分是中文的。 |
源码解析系列文章(TODO 待补充):
- 《Alamofire 原发分析系列》 - 一共12篇文章
- 《iOS开发之Alamofire源码解析》 - 独立的一片文章,适合快速揽阅
iOS 工程师技能图谱
- 《工程师节能图谱-图片》 - 图片格式
- iOS 技能图谱
- iOS 技能图谱
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
iOS 开发工程师职业图谱 | ★72 |
Objective-C 学习资料
Objective-C 中文教程
系列教程:
入门文章:
- 《Objective-C 30分钟入门教程》
- 《Objective-C基础教程》 - 一篇入门文章
Objective-C 英文教程
Objective-C 中高级教程、资料
内存管理方面:
-
Objective-C 中的内存管理
-
ARC : Automatic Reference Counting, 自动引用计数
Blocks :代码块
多线程、同步、异步
-
队列:
-
GCD、多线程: Grand Central Dispatch,中文称为大中枢派发,是异步执行任务的技术之一
-
同步、信号量:
Objective-C 其他资料/工具
- Objective-C 在线编辑器 - 支持 Objective-C 在线编译,运行。
- Online Objective-C compiler - 另一个 Objective-C 在线编译工具
- compile objective-c online - 又一个 Objective-C 在线编译工具
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
Objective-C Cheat Sheet | ★1.2k | Objective-C 的常见问题速查表。 |
Swift 学习资料
Swift 中文教程
- Swift 免费视频课程 - 课程搜
- 中文版 Apple 官方 Swift 教程《The Swift Programming Language》
- 《Swift 教程 - 菜鸟教程》
- Swift 教程 - W3CSchool
- 苹果官方的 Swift 教程
- Swift 5.1 教程
- Swift 4.0 教程
- Swift 3.1 教程
- Swift 3.0 教程
- Swift 2.2 教程
- Swift 2.1 教程
- Swift 2.0 教程
- Swift 2.0 文档翻译
- Swift 4.0 编码规范,持续更新中(已更新Swift 5.0)
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
中文版Apple官方Swift教程 | ★19.4k / Y |
Swift 英文教程
- Swift.org - Swift 官方网站
- Swift 官方文档(英)
- Swift Tutorial - tutorialspoint(英)
- Swift Tutorial - javatpoint(英)
- Brian Advent youtube channel - Youtube Swift 教程频道。
- Hacking With Swift - 使用 Swift 学习编写 iPhone 和 iPad 程序的网站。
- Thinkster
- iOS Development with Swift in Motion - 有一批关于学习 iOS 开发者的在线课。
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
awesome-swift | ★19.2k / Y | |
Design-Patterns-In-Swift | ★11.9k / Y | Swift 设计模式。 |
The Official raywenderlich.com Swift Style Guide - Swift 代码规范(英) | ★10.8k / Y | |
Awesome-Swift-Education | ★5.4k / Y | 学习 Swift 语言先关的所有资源(主要是一些文档和文章的搜集)。 |
The Swift Summary Book | ★1.7k / Y | 关于在 Playground 上编写 Swift 的电子书。 |
learn-swift | ★772 / Y | 感觉就是一本在线学习 Swift 电子书。 |
Swift Education | / Y | 一个用于学习 Swift 和 分享相关资料学习社区。 |
Swift 中高级教程/资料
-
内存管理、ARC:
-
协议:
-
协议扩展
-
错误处理:
-
Swift 扩展:
-
Swift 泛型:
-
Equatable 和 Comparable
-
Swift 队列
-
多线程、GCD、信号量
- 《Swift4.0 - GCD》
- 《Swift GCD DispatchSemaphore - 信号量》 - Swift 中信号量(DispatchSemaphore)的用法
- swift---GCD的基本使用
- Swift4 - GCD的使用
- 《Swift多线程:使用GCD实现异步下载图片》
-
随机数:
- 《Swift 之随机数》
- How To: Random Numbers in Swift(英) - 如何使用 Swift 中的随机值,以及从列表中提取随机元素。
-
Swift 和 Objective-C 混编、互操作
- 《Swift和Objective-C 混编》
- 《iOS开发之Swift篇(15)—— Swift与Objective-C混编》 - Objective-C 和 Swift 相互调用。
- 《(WWDC) Swift 和 Objective-C 的互操作性》
Swift 其他资料
英文资料:
- 100 Days of Swift - 100 天学习 Swift。一个用于学习 Swift 语言的站点,包括教程、代码、示例应用。(英)
- Swift Standard Library - Swift 标砖库文档(英)
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
30DaysofSwift | ★11k / Y | 另一个 30 天学习 Swift 的资源,每天一个例子应用。 |
Swift-30-Projects | ★6.1k / Y | 30 个用户自学的 Swift 小 App。 |
聚合类资料:
地址 | Stars/Siwft | 简介 |
---|---|---|
Awesome Swift | ★19.2k / Y | Swift 资源列表,包括教程、框架、工具等。(本文档已涵盖其中内容) |
matteocrippa | ★19.2k / Y | Swift 资源集合(本文档已涵盖)。 |
Awesome-Swift-Education | ★5.4k / Y | 关于 Swift 学习的资源集合。 |
Wolg | ★5k / Y | 另一个关于 Swift 的框架、类库、软件的文档(本文档已涵盖)。 |
Awesome-Swift-Playgrounds | ★3.2k / Y | Playgrounds 的资源聚合。 |
Awesome-Server-Side-Swift/TheList | ★858 / Y | Swift 服务端开发的资源列表。 |
参考手册:
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
whats-new-in-swift-4 | ★1.9k / Y | Swift 4.0 的新功能展示。 |
Swift Cheat Sheet | ★897 / Y | Swift 的针对常见问题和注意事项的速查表。 |
SwiftSnippets | ★140 / Y | 在 Xcode 中使用的 Swift 代码片段的集合。 |
Swift 学习工具:
- 一个在线运行 swift 工具
- Swift Online Compiler, IDE, Editor, Interpreter and REPL - 另一个在线 Swift 运行工具。
- OnlineSwiftPlayground - Swift 代码在线运行工具,支持 Swift 5。
iOS 基础组件教程、学习资料
Foundation 常用对象
-
Foundation 总览
-
NSArray: 数组对象
-
NSBundle:
-
NSData:
-
NSDate:
-
NSDateFormatter
-
NSNotificationCenter:
-
NSDictionary: 字典类型
-
NSException:
-
NSFileManager:
-
NSIndexPath:
-
NSNumber:
-
NSObject: ios 基础对象
-
NSSet: ios 集合
-
NSString: 字符串
-
NSTimer: 定时器
-
NSURL: url 封装
-
NSUserDefaults:轻量级持久化数据
-
NSHTTPCookieStorage:cookie 管理
-
NSFileHandle:文件处理
-
NSRunLoop:一种消息机制的处理模式
-
NSURLRequest: 处理 http 请求
-
NSOperation: 是一个抽象类,代表与单个任务相关联的代码和数据
-
NSInvocation: 调用对象消息
-
NSURLConnection: 处理url网络连接,主要是 http 的。不过 9.0 推荐使用 NSURLSession
-
NSURLSession:
UIKit 常用组件
- UIKit 总览
常用组件介绍:
-
UIAlertView: 基础告警框
-
UIApplication: 应用入口
-
UIBarButtonItem: 导航按钮
-
UIBezierPath: 贝塞尔曲线,绘图用
-
UIButton:按钮控件
-
UIColor:颜色类型
-
UIFont:字体类型
-
UIControl:控件基类
-
UIDevice:设备
-
UIImage: 图像
-
UIImageView:是一个加载图片的视图
-
UILabel:只读文本
-
UINavigationBar:导航栏控件
-
UINavigationController:导航容器
-
UINavigationItem:导航内组件
-
UIResponder:事件响应
-
UIScreen:充当物理屏幕
-
UIScrollView: 滚动视图
-
UISearchBar: 搜索框
-
UISplitViewController: 用来分屏,比如 ipad 上的效果
-
UITableView: 用于展示列表
-
UITableViewCell: 单元格
-
UITextField: 文本域表单
-
UITextView: 显示文本信息,可以多行
-
UIView: 基本视图控件
-
UIViewController: mvc 架构中的那个 视图控制器
-
UIWebView: 内置web浏览器
-
UIWindow: 通常在一个app中只会有一个UIWindow
-
UIPopoverController: 弹出视图
-
UICollectionView: 展示集合视图
QuartzCore 核心动画框架
- QuartzCore 总览:
核心组件介绍:
-
CALayer: UIView上的图层,很多的CALayer组成了UIView
-
CAMediaTimingFunction: 定义动画时间
-
CAAnimation: 抽象动画类
-
CAShapeLayer: 图形 layer 层,可以自定义形状
-
CATransaction: 动画事务
CoreData - 数据存取
核心组件介绍
-
NSManagedObjectContext: 用来表示一个对象空间或者你用来请求,创建,和保存被管理对象的上下文
-
NSFetchRequest: 获取数据的请求,通过被管理数据的上下文来执行查询
-
NSManagedObject: 数据库中的存放每一行数据
-
NSPersistentStoreCoordinator: 持久化存储
CoreLocation - 定位
核心组件:
-
CLLocationManager: 定位服务的管理类
-
CLLocation: 定位服务的管理类
MapKit 地图
其他资料
地址 | Stars/Siwft | 简介 |
---|---|---|
iOS 各种基础组件DEMO | ★3.1k |
SwiftUI 教程
SwiftUI 教程
- SwiftUI 免费视频教程 - 课程搜
- SwiftUI Tutorials(英) - 苹果官方 SwiftUI 教程
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
SwiftUI 教程 | ★1.3k / Y |
SwiftUI 资源
- SwiftUI 官网 - SwiftUI 官网
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
open-source-ios-apps#swiftui | ★23.5k / Y | 基于 Swift UI 实现开源App。 |
Learn-iOS-Swift-by-Examples | ★3.2k / Y | 精心收集并分类整理的Swift开发学习资源,包括Apple官方提供的示例代码和文档,以及github上的项目和国内外开发者的技术博客。 |
awesome-swiftui | ★625 / Y | 有关SwiftUI和Combine的文章,教程,指南和视频的列表的大杂烩。 |
Awesome SwiftUI | ★163 / Y | 精选的SwiftUI教程,库,和文章的精选列表(英文)。 |
Flutter 教程
- Flutter 免费视频教程 - 课程搜
- Flutter教程 - Flutter中文网
- Flutter Tutorials - Flutter 官方教程(英)
- Flutter Tutorial - Flutter 简明教程 - tutorialspoint (英)
Flutter 文章
Flutter 资源
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
flutter | ★93.4k | Flutter针对想要在Android和iOS上运行的2D移动应用进行了优化。您可以使用Flutter构建全功能应用程序,包括相机、地理位置、网络、存储、第三方SDK等. |
flutter-go | ★21.1k | flutter 开发者帮助 APP,包含 flutter 常用 140+ 组件的demo 演示与中文文档. |
flutter/plugins | ★11k | Flutter 官方维护的一套插件库 |
flutter-webrtc | ★1.4k | Flutter Mobile/桌面/Web 的 多端 WebRTC 插件。 |
List of Awesome Flutter Packages | ★902 | 一组 Flutter 资源的组件库,资源库。 |
Flutter 中文优质资源清单 | ★202 | |
mi_card_flutter | ★156 | Complete Flutter Development Bootcamp 中的 Mi Card 项目教学代码。 |
dicee-flutter | ★80 | Complete Flutter Bootcamp 中 Dicee 项目的入门代码。 |
awesome-flutter | flutter 资源列表 |
React Native/混合应用
JavaScript和React编写原生移动应用
React Native 教程
系列教程:
文章:
React native 开源框架
地址 | Stars/Siwft | 简介 |
---|---|---|
react-native | ★87.6k | 使用 React 构建移动应用的框架,facebook 出品。 |
weex | ★17.6k | 用于构建移动跨平台 UI 的框架,阿里巴巴出品,在阿里系 app 中被广泛应用。 |
react-native-maps | ★11.1k | React Native Mapview 组件,适用于 iOS 和 Android,airbnb 出品。 |
react-native-maps | ★11.1k / Y | 适用于 iOS 和 Android 的 React Native Mapview 组件。 |
react-native-maps | ★11.1k | 适用于 iOS + Android 的 React Native Mapview组件。 |
react-native-code-push | ★6.8k | 微软提供的一套可用于 React Native 和 Cordova 的热更新服务. |
react-native-svg | ★4.6k | React Native 的 SVG 库。 |
RNStudyNotes | ★3.7k | React Native 研究与实践. |
react-native-config | ★3.1k | 用于响应本机应用程序的配置变量,模块将配置变量公开到你的javascript代码中,同时支持iOS和 Android. |
react-native-webrtc | ★2.7k | React Native 的 WebRTC 模块。 |
react-native-notifications | ★2.2k | React Native 通知框架。. |
react-native-permissions | ★2.1k | 适用于 iOS 和 Android 上 React Native 统一权限 API。 |
react-native-spinkit | ★2k | 一套 React Native 动画效果加载指示器。 |
TypeScript-React-Native-Starter | ★1.8k | TypeScript和React Native的入门模板,其中包含详细的自述文件,介绍了如何将二者结合使用。 |
MVVMFramework | ★1.6k | (OC版)总结整理下一个快速开发框架,分离控制器中创建 tableView 和 collectionView 的代码,已加入cell自适应高度,降低代码耦合,提高开发效率。 |
react-native-orientation | ★1.5k | 监听 react native 中的设备方向变化,并在屏幕与屏幕之间设置首选方向。 |
react-native-iap | ★1.4k | 一个应用内购买(内购)的 react native 模块。 |
react-native-template-typescript | ★826 | 简洁干净的 React Native 模板,可快速使用 TypeScript。 |
react-native-viewpager | ★601 | 针对 Android ViewPager 和 iOS UIPageViewController 的 React Native 封装。 |
react-native-syan-image-picker | ★479 | React-Native 多图片选择 支持裁剪 压缩. |
React Native Awesome Alerts | ★329 | 一套 React Native 告警框组件。 |
QTEventBus | ★315 | 优雅的处理全局事件,支持 AppDelegate 解耦. |
Objective-Chain | ★248 | Objective-Chain 是一个面向对象的响应式框架,作者表示该框架吸收了 ReactiveCocoa 的思想,并且想做得更面向对象一些。 |
LoginWithReactiveCocoa | ★31 | ReactiveCocoa - 登录交互效果的实现。 |
React native 资源汇总
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
open-source-ios-apps#react-native | ★23.5k | React native 的开源应用程序 |
React Native | ★6.1k | 30 天学习 React Native 的 Demo 示例,包括 iOS 和 Android 版本的。 |
React Native 学习资源精选仓库(汇聚知识,分享精华) | ★1.6k | |
react-native-awesome-card-io | ★425 | 一个用于React Native的完整且跨平台的 card.io 组件。 |
其他混合开发框架
地址 | Stars/Siwft | 简介 |
---|---|---|
rexxar-ios | ★566 | 豆瓣推的混合开发库 Mobile Hybrid Framework Rexxar iOS Container |
iOS 工程师的通用技能
C/C++ 教程
算法/数据结构/设计模式
地址 | Stars/Siwft | 简介 |
---|---|---|
Trip-to-iOS-Design-Patterns | ★1.2k | iOS 设计模式相关资料整 |
设计模式在Swift中的应用 | ★21 / Y |
Linux 相关教程
常用命令:
网络/Web
http:
tcp/ip:
前端教程
html 相关教程:
CSS 相关教程:
Javascript 相关教程:
程序员软技能
- 程序员软技能 - 课程搜 - 很多免费在线课程。
- 《程序员必须学会的《软技能》》
其他工具相关
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
Git教程 | ★451 |
架构、框架、模式
架构相关教程、资料
-
VIPER 架构:
-
MVVM 架构:
-
MVC 架构:
架构/模式相关开源框架
简洁架构,Viper, MVVM, 响应式...
地址 | Stars/Siwft | 简介 |
---|---|---|
Small | ★4.9k | A small framework to split app into small parts |
BeeFramework | ★3.4k | BeeFramework是一款iOS平台的MVC应用快速开发框架,使用Objective-C开发。 其早期原型曾经被应用在QQ空间 、QQ游戏大厅 等多款精品APP中。 BeeFramework 从根本上解决了iOS开发者长期困扰的各种问题,诸如:分层架构如何设计,层与层之间消息传递与处理,网络操作及缓存,异步及多线程,以及适配产品多变的UI布局需求。 |
CleanArchitectureRxSwift | ★2.7k / Y | 使用 RxSwift 的简洁架构的示例。 |
samurai-native | ★2.3k | 是一个基于浏览器内核通过HTML+CSS 开发原生移动应用的iOS框架. |
MobileProject | ★2k | 一个基于 MVC 的项目框架,并集成一些常用的功能. |
SlackKit | ★919 / Y | SlackKit makes it easy to build Slack apps in Swift. |
ios-architecture | ★745 / Y | 一套 iOS 框架的集合,包括 MVC, MVVM, MVVM+RxSwift, VIPER, RIBs 等等. |
Clean Architecture for SwiftUI + Combine | ★721 / Y | 一个简洁示例项目,展示如何基于 SwiftUI 建立应用。 |
Tempura | ★532 / Y | 一套iOS开发的整体方案, 灵感来自于 Redux 和 MVVM. |
iOS-Viper-Architecture | ★531 | 这个库包含了一套实现 VIPER 架构的详细示例,基于 Alamofire、AlamofireImage、PKHUD、CoreData 等框架。 |
Reactant | ★372 / Y | Reactant 是一个 iOS 响应式框架. |
Viperit | ★371 / Y | 一个 Viper 框架,让基于 VIPER 架构开发APP更加简单,基于Swift. |
XFLegoVIPER | ★215 | A lightweight framework base on VIPER architecture for iOS, to build robust and maintained large scale project. |
YARCH | ★141 | 一个 VIPER 的替代品,基于单项数据流 (类似于 flux). |
SwiftyVIPER | ★105 / Y | 更简洁方便地实现 VIPER 架构. |
VIPER Module Generator | ★51 | 一个 VIPER 模块生成器,包括注释和预定义的函数. |
Spin | ★49 / Y | 针对 RxSwift, ReactiveSwift 和 Combine 的反馈回路系统的一个通用实现。 |
MMVMi | ★7 | 一套 MVC 和 MVVM 的校验模型 |
其他架构、模式相关资源
地址 | Stars/Siwft | 简介 |
---|---|---|
awesome iOS architecture | ★3.8k | 仅面向框架的 iOS 资源集合,包括 MVC,MVP,VIPER等模式。 |
代码规范/APP质量
编码规范
编码规范英文资料
- Objective-C Coding Convention and Best Practices - 一个代码约束相关的 Gist。
- Dropbox Objective-C Style Guide - Dropbox 的 Objective-C 代码风格指南。
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
Swift Style Guide by @raywenderlich | ★10.8k / Y | raywenderlich.com 官方 Swift 代码风格指导。 |
Futurice iOS Good Practices | ★9.9k | iOS 初学者的最佳实践。 |
NY Times - Objective C Style Guide | ★5.6k | 一个纽约时报用的 Objective-C 代码风格知道。 |
GitHub - Style guide & coding conventions for Swift projects | ★4.7k / Y | Github 官方的 Swift 代码规约。 |
raywenderlich Style Guide | ★3k | raywenderlich.com Objective-C 编码约束。 |
GitHub Objective-C Style Guide | ★1.7k | 一个 Objective-C 代码风格指导。 |
Swift Style Guide by LinkedIn | ★1.2k / Y | LinkedIn 官方 Swift 代码指南。 |
Spotify Objective-C Coding Style | ★224 | Spotify 出品的针对 iOS 的开发规范。 |
Prolific Interactive Style Guide | ★170 / Y | 一个 Swift 代码样式指南。 |
SlideShare Swift Style Guide | ★94 / Y | SlideShare 官方的 Swift 代码指南。 |
代码质量检查框架/工具
- 代码质量总是很重要的。保留代码检查,内存检查工具等等*
- PSPDFUIKitMainThreadGuard - 简洁的代码片段,当 UIKit 在后台线程被使用时生成断言。
- Bugsee - 应用程序内的错误和崩溃报告,包括视频、日志、网络流量和跟踪。
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
MLeaksFinder | ★4.8k | 在程序运行时寻找内存泄漏 |
MLeaksFinder | ★4.8k | 在开发阶段找到内存泄漏问题。 |
SwiftFormat | ★3.9k / Y | 用于重新格式化Swift代码的代码库和命令行格式化工具。 |
FBRetainCycleDetector | ★3.7k | 帮助检测运行时循环引用的iOS库。 |
FBMemoryProfiler | ★3.3k | 帮助分析iOS内存使用情况的iOS工具 |
KZBootstrap | ★2k | 一系列的脚本和注释,代码质量很差时,在编译时产生额外的错误和警告,目的是高质量的编码。 |
Bootstrap | ★2k | iOS项目引导旨在实现高质量的编码。 |
HeapInspector-for-iOS | ★1.8k | 在没有 instruments的情况下,在iOS应用程序中发现内存问题和泄漏。 |
Tailor | ★1.3k / Y | 用于Swift的跨平台静态分析器,帮助您编写更干净的代码并避免错误 |
spacecommander | ★1.1k | 作为一个团队提交完全格式化的Objective-C代码,甚至不需要尝试 |
IBAnalyzer | ★958 | 在不运行应用程序或编写单元测试的情况下查找常见的xib和脚本相关问题。 |
ODUIThreadGuard | ★699 | 一个帮助您检查是否在主线程中进行了UI更改的保护程序。 |
DWURecyclingAlert | ★571 | 优化 UITableViewCell 以实现快速流畅滚动 |
SwiftCop | ★545 / Y | SwiftCop 是一个完全用Swift编写的个还是验证库,灵感来自 Ruby On Rails 活动记录验证的清晰性 |
Buglife | ★488 | 用户 iOS 应用的错误报告. |
Warnings-xcconfig | ★445 | 一个 xcconfig (Xcode 配置) 文件, 在项目或其目标中轻松打开大量警告。 |
GlueKit | ★363 / Y | Swift的类型安全观察框架。 |
Clue | ★281 | iOS灵活的错误报告框架,包括屏幕广播、网络、交互和视图结构。 |
ocstyle | ★260 | Objective-C 代码风格检查器. |
Aardvark | ★229 | Aardvark 是一个使得创建可操作的bug报告变得非常简单的库。 |
PSTModernizer | ★217 | 通过修复和添加缺少的方法,更容易支持较旧版本的iOS环境。 |
Stats | ★163 | 应用内存使用情况的监视器. |
Trackable | ★144 | Trackable是一个简单的分析集成助手库。它是专门为方便、舒适地与现有项目集成而设计的。 |
DecouplingKit | ★133 | iOS 项目模块之间的解耦 |
KZAsserts | ★103 | 一系列的自定义断言,使用 DSL 来自动生成 NSError,允许在 Debug 时断言和在 Release 时捕获错误。 |
WeakableSelf | ★52 / Y | 在闭包中封装“weak self”和“guard”语句的快速微框架。 |
Fallback | ★43 | 嵌套do-try-catch的语法糖。 |
静态代码分析
- 一些静态代码分析工具,用户增加代码风格和约束.*
地址 | Stars/Siwft | 简介 |
---|---|---|
Swiftlint | ★13.4k / Y | Realm 出品的 Swift 代码规范检测工具。深度嵌入 Clang 和 SourceKit,可以监测整个项目的代码风格。如果有不符合规范之处,SwiftLint会报出相应警告️。当然为了方便和特殊情况,也可在相应代码处手动关闭警告,或是在整个项目中关闭警告,十分灵活。 |
OCLint | ★3.1k | 用于提高质量和减少缺陷的静态代码分析工具。官网 |
IBLinter | ★891 / Y | 用于生产接口的linter工具。 |
Taylor | ★290 / Y | 测量Swift代码度量并在Xcode、Jenkins和其他CI平台上获取报告。官网 |
AnyLint | ★90 / Y | 结合 Swift 和正则表达式的强大功能来做任何 Lint |
SwiftLinter | ★4 / Y | 在项目之间共享lint规则,并使用SwiftLint共享lint更改的文件。 |
数据存储
Core Data
CoreData是一个模型层的技术,也是一种持久化技术,它能将模型对象的状态持久化到磁盘里
Core Data 相关教程
Core Data 开源框架、工具
- Core data 框架, 包装器, 生成器以及样例.*
地址 | Stars/Siwft | 简介 |
---|---|---|
MagicalRecord | ★10.9k | 让 Core Data 的数据获取变得非常容器 |
Mogenerator | ★3k | Core Data 自动代码生成器. |
CoreStore | ★2.5k / Y | 一个强大的 Core Data 框架, 用于 增量迁移、获取、观察等操作。 |
Sync | ★2.4k / Y | 一个现代的 Swift CoreData-JSON 同步工具. |
Ensembles | ★1.6k | 一个 Core Data 同步框架. |
QueryKit | ★1.3k / Y | 一个简洁的类型安全的 CoreData 查询语言。 |
ObjectiveRecord | ★1.3k | ActiveRecord 的 Objective-C 版本。 |
Graph | ★835 / Y | Swift中CoreData的优雅数据驱动框架。 |
AlecrimCoreData | ★778 / Y | 一个强大且简单的 Core Data 封装框架,基于 Swift 实现. |
CoreModel | ★745 | Replace CoreData. |
encrypted-core-data | ★740 | 使用 SQLClipher 对 CoreData 的 SQLite 存储进行加密。 |
CoreStore | ★560 | Core Data 管理类库。 其中事务管理及查询是其比较大的亮点,整套 API 功能完整. |
CoreDataStack | ★559 / Y | BNR Core Data 栈. |
PrediKit | ★537 / Y | iOS、macOS、tvOS和watchOS的NSPredicate DSL。灵感来源于SnapKit,用Swift写成。 |
JSQCoreDataKit | ★499 / Y | swift 开发者的 Core Data 技术栈. |
SSDataKit | ★463 | 消除使用 CoreData 产生的样板代码。 |
AERecord | ★305 / Y | 超级棒的 Core Data 包装器,基于 Swift. |
ios-queryable | ★231 | ios-queryable 是一个基于 CoreData 的 IQueryable/IEnumerable 实现。 |
Skopelos | ★228 / Y | 一个极简的,线程安全的,非样板和超级易于使用的版本的活动记录的 Core Data。 |
DATAStack | ★210 / Y | 100% Swift 实现的简单样板级 Core Data 套件, NSPersistentContainer. |
HardCoreData | ★207 | 不会阻塞 UI 线程的 CoreData 栈和控制器。 |
SLRESTfulCoreData | ★183 | 根据 Objc 命名习惯,在运行时自动生成访问器,URL替换和智能属性映射。 |
JustPersist | ★145 / Y | JustPersist是在iOS上进行持久化的最简单、最安全的方法,它提供了现成的 Core Data 支持。 |
Cadmium | ★117 / Y | 一个完全swift框架,它封装了 CoreData 并提供最佳实践。 |
PredicateFlow | ★90 / Y | 编写惊人的、强类型的、易于阅读的NSPredicate,允许您编写可流动的NSPredicate,而不必猜测属性名称、谓词操作或编写错误的参数类型。 |
CWCoreData | ★66 | :方便并发环境下 CoreData 框架开发的扩展与实用工具。 |
CloudCore | ★57 | 强大的CloudKit同步工具:离线编辑,关系,共享和公共数据库,字段级增量等等。 |
CoreDataDandy | ★35 | 一种围绕 Core Data 的功能性轻量级包装器,它简化了常见的数据库操作。 |
Core Data Query Interface | ★29 | 一个类型安全、流畅的 Core Data 查询框架. |
DataKernel | ★12 / Y | 一个简化操作的 CoreData 包装器 |
Records | / Y | 只需几分钟,就可以建立一个功能完善的CoreData实现,它包含Swift的静态、类型安全特性。 |
数据库
数据库相关教程
数据库相关开源框架、工具
- 包括:包装器,客户端,解析替代方案和安全工具,用于处理临时数据和持久数据。*
- Couchbase Mobile - Couchbase文档存储,用于带有云同步的移动设备。
- Couchbase Mobile - Couchbase,有云同步支持的移动平台上的文档存储。
- mogenerator - mogenerator为你定义了的Core Data生成默认的数据类。与xCode不一样的是(xCode一个Entity只生成一个NSManagedObject的子类),mogenerator会为每一个Entity生成两个类。一个为机器准备,一个为人类准备。为机器准备的类一直去匹配data model。为人类准备的类就给你轻松愉快的去修改和保存.
- swiftydb - 是一个第三方 SQLite 工具,能够大大简化数据库操作。如果你不放心 Realm,那就用 SwiftyDB 吧。使用教程、demo
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
Realm | ★13.9k / Y | Core Data 和 SQLite 的替代方案:简单,现代和快速,很强大。Realm 是由硅谷创业公司发布的一款可以用于 iOS 和 Android 的跨平台移动数据库。支持的平台包括 Java,Objective-C,Swift,React Native,Xamarin。是第一个专门针对移动平台的数据库,立志取代 SQLite 、CoreData。核心数据引擎由 C++ 开发,有着优异的性能。简单易用可以快速上手,在数据存储时再也不用思考烦人的底层技术细节。 realm 官方 |
FMDB | ★13.4k | 一个 SQLite 的 Cocoa/Objective-C 封装,支持多线程操作。 |
sqlitebrowser | ★13.1k | DBite for SQLite(DB4S)项目的官方主页。 以前称为“ SQLite数据库浏览器”和“ SQLite数据库浏览器”。 网站:http://sqlitebrowser.org |
MMKV | ★10.1k | 微信开发的一套搞笑, 小型的适用于移动端的 key-value 存储框架, 可以用在 iOS, Android, macOS 和 Windows 系统上. |
WCDB | ★8.4k | WCDB是适用于iOS,macOS的高效,完整,易于使用的移动数据库框架。 |
SQLite.swift | ★6.9k / Y | SQLite3上的类型安全的Swift语言层。 |
SwiftyUserDefaults | ★4.2k / Y | 静态类型的NSUserDefaults。 |
SQLCipher | ★4.1k | SQLCipher使用256-bit AES加密,SQLCipher分为收费版本和免费版本。官方教程, 加密你的SQLite - 各种sqlite数据库加密介绍。 SQLCipherDemo下载 。 |
YapDatabase | ★3.3k | YapDatabase 是适用于 iOS 和 Mac 的可扩展数据库。 |
GRDB.swift | ★2.9k / Y | Swift的通用SQLite工具包,支持WAL模式。 |
ParseAlternatives | ★2.8k | 解析备用后端服务提供商的协作列表。 |
SugarRecord | ★2.1k / Y | 数据持久性管理库 |
FCModel | ★1.6k | 一个针对 Core Data 替代品,针对那些喜欢直接使用 SQL 的开发者. |
IceCream | ★1.4k | 同步 Realm Database 和 CloudKit. |
UserDefaults | ★1.3k / Y | 适用于iOS,macOS和tvOS的简单强类型UserDefaults。 |
fluent.swift | ★1k / Y | 纯swift实现的类型安全的SQLite3封装,数据存储和JSON解析是永恒的话题。 |
Fluent | ★1k / Y | 用于在Swift中使用数据库的简单ActiveRecord实现。 |
Zephyr | ★680 / Y | 毫不费力地通过 iCloud 同步 NSUserDefaults。 |
Shallows | ★604 / Y | 轻量级的持久化工具箱。 |
WHC_ModelSqliteKit | ★589 | 专业的数据库存储解决方案. |
MongoKitten | ★582 / Y | 一个纯Swift MongoDB客户端实现,支持嵌入式数据库。 |
Defaults | ★553 / Y | 快速而现代的UserDefaults。 |
Prephirences | ★521 / Y | Prephirences是一个Swift库,提供了有用的协议和便捷的方法来管理应用的偏好设置,配置和应用状态。 |
JQFMDB | ★509 | FMDB的封装,操作简单,线程安全,扩展性强,直接操作model或dictionary. |
Default | ★432 / Y | 现代的 UserDefaults + Codable 接口。 |
RealmObjectEditor | ★422 / Y | Realm Object Editor 是一个可视化编辑器,您可以在漂亮的用户界面中创建 Realm 实体,属性和关系。完成后,您可以保存架构文档以供以后使用,并且可以使用 Swift,Objective-C和Java导出实体。 |
UserDefaultsStore | ★358 / Y | 一种简单且轻巧的方式来存储和检索-合理数量的Codable对象,几行代码就可以搞定 |
Unrealm | ★320 / Y | Unrealm使您可以轻松地将Swift本机类,结构和枚举存储到Realm中。 |
SwiftMongoDB | ★272 / Y | Swift的MongoDB接口。 |
Nora | ★263 | Nora是一个Firebase抽象层,用于处理FirebaseDatabase和firebasetstorage。 |
RealmIncrementalStore.swift | ★225 / Y | RealmIncrementalStore.swift:集 Realm 数据库和 CoreData 对象模型两者优势的 Realm 数据库访问类库。 |
StorageKit | ★211 | 数据存储疑难解答 |
realm-cocoa-converter | ★185 | 该库提供了从各种数据容器格式导入/导出Realm文件的功能。 |
SecureDefaults | ★170 / Y | UserDefaults / NSUserDefaults上的轻量级包装,带有一个额外的AES-256加密层。 |
PersistentStorageSerializable | ★163 / Y | 使用Swift库,可以更轻松地使用磁盘上的系统User Defaults或Property List文件序列化用户的首选项(应用程序的设置)。 |
OHMySQL | ★143 | MySQL C API 的 Objective-C 封装 . |
RealmGeoQueries | ★132 | RealmGeoQueries 使用 Realm Cocoa 简化了空间查询。在没有官方功能的情况下,该库提供了进行邻近搜索的可能性。 |
PersistenceKit | ★115 / Y | 用几行代码将可编码对象存储和检索到各个持久层。 |
TypedDefaults | ★109 | TypedDefaults是一个实用程序库,用于类型安全地使用NSUserDefaults。 |
GKDatabase | ★100 | 基于SQLite3简单封装了下,实现了一行代码解决增删改查等常用的功能!并没有太过高深的知识,主要用了runtime和KVC:请看Demo~ 原理篇请看这里:简书地址. |
MySQL | ★100 / Y | 一个 Swift 针对 MySQL 客户端库的封装, 使得应用可以访问 MySQL 数据库. |
SwiftStore | ★100 / Y | 使用 Swift 基于 LevelDB 的 Key-Value 存储. |
YapDatabaseExtensions | ★88 / Y | 与Swift一起使用的YapDatabase扩展。 |
GDataBase | ★71 | 基于FMDB的ORM数据库存储解决方案. 面向模型和线程安全的API. 一句代码存储,读取.对存储模型无需继承BaseObject. 可自定义多主键,可使用sqlite关键字.可自定义序列化字段等.支持模型黑名单.支持数据库表存储value base64编/解码.对模型无侵入,只需遵守相关协议即可.极大方便项目中使用. |
Storez | ★63 / Y | 安全的,静态类型的,与存储无关的键值存储(具有名称空间支持)。 |
MongoDB | ★52 / Y | 一个 Swift 针对 mongo-c 客户端的的封装, 使得应用可以访问 MongoDB 服务器. |
ObjectiveRocks | ★51 | Facebook RocksDB 的 Objective-C 封装 - 闪存和RAM存储的持久键值存储。 |
PostgreSQL | ★46 / Y | 一个 Swift 针对 PostgreSQL 客户端库的封装, 使得应用可以访问 PostgreSQL. |
RealmWrapper | ★39 / Y | 针对 RealmSwift 安全简单的封装 . |
StorageManager | ★38 / Y | 使用FileManager作为数据库的安全简便方法。 |
Breeze | ★32 / Y | 用Swift写的一个轻量级的CoreData管理工具,并且还支持iCloud 。 |
GXDatabaseUtils | ★30 | 在FMDB基础上的工具. |
FileMaker | ★30 / Y | 一个 Swift 针对 the FileMaker XML Web 开放接口的封装, 使得应用可以访问 FileMaker. |
OneStore | ★27 | 具有简洁 API 的NSUserDefaults的单值代理。 |
Redis | ★25 / Y | 一个 Swift 针对 Redis 客户端库的封装, 使得应用可以访问 Redis. |
ModelAssistant | ★21 / Y | 一套用于管理Swift中视图和模型之间的交互的优雅类库 |
Akaibu-NSUserDefaults | ★15 / Y | Swift 键/值存储,只需要一行代码就可以对 NSObject 对象进行归档。类的属性会自动映射和归档。 |
PropertyKit | ★13 / Y | 协议优先,iOS、macOS和tvOS的类型和密钥安全Swift属性。 |
FirebaseHelper | ★11 | 适用于 Firebase实时数据库的安全简便的包装器。 |
QuickDB | ★6 | 一行代码就可以存储和检索 Codable ,而且还包括了更多用例. |
iOS 缓存
iOS 缓存相关教程
iOS 缓存相关框架
线程安全、离线且高性能缓存库和框架
地址 | Stars/Siwft | 简介 |
---|---|---|
HanekeSwift | ★5k / Y | 一个轻量级的iOS通用缓存,用Swift编写,特别适合图片。 |
TMCache | ★3.1k | TMCache 是 Tumblr 开源的一个基于 key/value 的数据缓存类库,可以用于缓存一些临时数据或者需要频繁加载的数据,比如某些下载的数据或者一些临时处理结果。 |
Disk | ★2.7k / Y | 一个不错的缓存框架,用于持久化结构、图片和数据。 |
PINCache | ★2.3k | iOS和macOS的快速、无死锁并行对象缓存。 |
YYCache | ★2.2k | iOS的高性能缓存框架,轻量级缓存的最可靠选择。 |
YTKKeyValueStore | ★2.1k | Key-Value存储工具类,说明。 |
Cache | ★2k / Y | 只有缓存的一个框架。 |
Awesome Cache | ★1.2k / Y | 一个用Swift编写的磁盘缓存 |
SPTPersistentCache | ★1.2k | 每个开发者都试图在iOS应用程序生命周期的某个时刻实现缓存,这就是这个框架的目的. |
RocketData | ★628 | 不可变模型的缓存和一致性解决方案 |
SDURLCache | ★608 | URLCache的子类,可以为 iPhone/iPad 应用提供的本地磁盘缓存。 |
Carlos | ★542 | 简单但却灵活的缓存 |
Carlos | ★542 / Y | 一个简单但灵活的缓存 |
mattress | ★512 | 用于iOS Web内容脱机缓存。 |
Track | ★234 / Y | Track是Swift编写的线程安全缓存。由支持 LRU 的 DiskCache 和 MemoryCache 组成。 |
Cache | ★204 / Y | 一个 Swift 缓存 库. |
Cachyr | ★118 / Y | 一个小型 key-value 数据缓存,可用于 iOS, macOS 和 tvOS, 基于 Swift 实现。 |
RuntimeDemo | ★87 | runtime自动归档/解档,源码分析. |
UITableView Cache | ★72 | UITableView单元缓存,用于修复单元实例化时的滚动延迟。 |
MemoryCache | ★59 / Y | MemoryCache 是一个类型安全的内存缓存. |
JLKeychain | ★52 | 快捷使用keychain存储数据的类,使keychain像NSUserDefaults一样工作. |
Johnny | ★35 / Y | 一个基于 Swift 的缓存 |
RENCache | ★27 | 简单方便的缓存 |
MGCacheManager | ★11 | 一个不错的iOS网络缓存管理类。 |
文件操作
使用原生方法操作文件
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
HYFileManager | 一个不错的文件管理操作工具类 HYFileManager is a powerful util based on NSFileManager. |
文件操作其他框架/工具
- 文件管理、文件浏览器、压缩和文件变化的观察器*
地址 | Stars/Siwft | 简介 |
---|---|---|
ZipArchive | ★4.5k | ZipArchive 是一个简单的实用类,用于在iOS和Mac上压缩和解压缩文件。 |
FileKit | ★2.1k / Y | Swift 实现的简单快捷的文件管理工具 |
Zip | ★1.8k / Y | 处理压缩解压缩的 Swift 框架. |
FileBrowser | ★1.4k / Y | 一个强大的基于 Swift 实现的文件浏览器。 |
ZIPFoundation | ★1.3k / Y | 基于Swift实现,轻松处理 Zip. |
ZipZap | ★1.2k | 适用于iOS,macOS和tvOS的 zip文件 I/O库。 |
KZFileWatchers | ★968 / Y | 用于观察本地和远程文件更改的微型框架。有助于构建开发工具。 |
AppFolder | ★929 / Y | AppFolder是一个轻量级框架,可让您设计应用程序容器内目录的友好操作。 |
FileExplorer | ★663 / Y | 强大的iOS文件浏览器,允许用户选择和删除文件和/或目录。 |
FileProvider | ★646 / Y | 在iOS/tvOS和macOS上替换本地、iCloud和远程(WebDAV/FTP/Dropbox/OneDrive/SMB2)文件的FileManager。 |
Ares | ★128 | 实现在 Macs 和 iOS 设备之间零设置P2P文件传输。 |
AMSMB2 | ★76 / Y | 用于连接 iOS的SMB2/3 共享文件的Swift框架。 |
数据结构和算法
算法和数据结构相关教学资料
地址 | Stars/Siwft | 简介 |
---|---|---|
100-Days-Of-iOS-DataStructure-Algorithm | ★816 | 100天iOS数据结构与算法实战. |
LearningMasteringAlgorithms-C | ★548 | 《算法精解:C语言描述》源码及Xcode工程、Linux工程. |
AlgorithmOC | OC算法与数据结构实现. |
算法和数据结相关开源框架
差异,键路径,排序列表和其他常见的数据结构包装器以及类库
地址 | Stars/Siwft | 简介 |
---|---|---|
swift-algorithm-club | ★23k / Y | 基于 Swift 的算法和数据结构,包括针对他们的解释。 |
Dollar | ★4.1k / Y | 一组SWiFi他工具集合,类似于Lo-Dash 或 Underscore.js , Javascript 语言版本对应为 https://www.dollarswift.org/. |
DifferenceKit | ★2.5k / Y | 一个针对 Swift 集合类型快速灵活的,且 O(n) 时间复杂度的,diff 算法库 |
Result | ★2.5k / Y | Swift,为任意操作的成功/失败建模。 |
EKAlgorithms | ★2.4k | 一些常见的算法和数据结构,基于 Objective-C 实现. |
SwiftStructures | ★2k / Y | 基于Swift的,常用数据结构和算法的示例。 |
DeepDiff | ★1.7k / Y | 一个用 Swift 实现的 diff库。. |
BTree | ★1.2k / Y | 基于Swift的快速集合排序框架,使用内存 B树 结构. |
Changeset | ★801 | 从一个集合到另一个集合的最少编辑。 |
Algorithm | ★763 / Y | Algorithm 十一组数据结构的集合,包括一些概率工具集合。 |
Differ | ★534 / Y | 一个Swift库,可生成集合之间的差异和补丁。 |
SwiftGraph | ★532 / Y | 纯Swift中的图形数据结构和工具函数库。 |
Dispatch | ★432 / Y | 基于 Swift 的 Multi-store Flux 实现. |
KeyPathKit | ★351 / Y | KeyPathKit提供了一个无缝的语法来使用类型化的keypaths操作数据。 |
Buffer | ★349 / Y | Swift μ-framework 用户高效的矩阵 diff, 以及单元配置. |
SwiftPriorityQueue | ★297 / Y | 纯Swift实现的优先级队列,基于经典的对模型。 |
Probably | ★266 / Y | Swift概率和统计库。 |
HeckelDiff | ★162 / Y | 一个非常快的 diff 库,基于 Swift. |
Differific | ★123 / Y | 一个快速方便的 diff 框架. |
diff | ★107 / Y | 纯 Swift 中的简单的 diff 库。 |
Pencil | ★79 / Y | 让从文件中读写值更容易了 |
AnyObjectConvertible | ★63 | 可以轻松将您自己的结构/枚举转换为AnyObject。 |
Brick | ★57 | 基本场景和复杂场景的通用视图模型。 |
Dekoter | ★23 / Y | NSCoding 对应于 Swift 的结构类型. |
Monaka | ★21 | 将自定义结构转换为NSData。 |
RandMyMod | ★17 | RandMyMod基于您自己的结构或类创建一个或一组随机实例。 |
OneWaySynchronizer | ★6 | 一个将本地数据与远程源同步的最简单抽象实现。 |
Impeller | / Y | Swift中的分布式值存储框架。 |
时间和日期库处理
- Swift4中对于日期时间的处理(Date、DateComponents、Calendar、DateFormatter、Locale) - 介绍得很全面
- 《Swift 一些时间处理》 - 简单清晰,以及生成农历日期。
- 《Swift 使用 Date 的一点心得》 - 介绍基本功能的使用,,包括日期转换,日期计算等。
- Swift - 获取当前时间的时间戳(时间戳与时间互相转换)
时间和日期相关开开源组件
- 时间 及 NSCalendar 的相关库. 也包括一些时间生成工具,时间选择空间以及 NSTimer 相关工具.*
地址 | Stars/Siwft | 简介 |
---|---|---|
DateTools | ★7k | 简便的 Objective-C 日期和时间工具,很强大的日期工具类 |
SwiftDate | ★5.7k / Y | 非常好用的帮助处理 Date 相关的库。灵活运用了 swift 的重载操作符、扩展等特性,使得时间可以直观的进行算术运算:比较大小,直接加减等。常见的时间也字符串的转换也做了良好的支持。 |
Timepiece | ★2.6k / Y | 一个 Swift NSDate 扩展,比较只管好用。 |
Chronology | ★1.8k / Y | 帮助建立更好的日期/时间的工具库。 |
NSDate-TimeAgo | ★1.8k | 用于NSDate和iOS,Objective-C,Cocoa Touch,iPhone,iPad上的 “以前”,“以后”,“相对日期”或“模糊日期”类别。 |
SwiftMoment | ★1.6k / Y | 一个时间和日历操作库。 |
Schedule | ★1.6k / Y | 一个轻量级提供了 Swift 所缺少的任务调度框架,语法比较人性。 |
SwiftyTimer | ★1.1k / Y | NSTimer 的 Swifty API. |
DateHelper | ★1.1k / Y | Swift 的基于 NSDate 的比较方便的扩展。 |
Time | ★1k / Y | Swift中类型安全的时间计算工具,基于泛型。 |
iso-8601-date-formatter | ★608 | Cocoa NSFormatter子类,用于将日期转换为ISO-8601格式的字符串或从中转换日期。支持日历、周等格式。 |
DatePicker | ★562 | 日期选择器,日期时间选择,时间选择器. |
10Clock | ★523 | 一个漂亮的时间选择控件,灵感来自于iOS10的“就寝时间”计时器。 |
TrueTime | ★405 / Y | 获取不受设备时钟时间变化影响的真实当前时间。 |
Kronos | ★385 / Y | 一套Swift中优雅的NTP日期库 |
Solar | ★356 / Y | 一个用于生成日出和日落时间的 Swift 小型工具库。 |
NVDate | ★179 / Y | Swift4日期扩展库。 |
AnyDate | ★176 / Y | Swifty日期和时间API,灵感来自于Java 8 DateTime API的启发。 |
TimeZonePicker | ★111 | 一个 TimeZonePicker UIViewController ,类似于 iOS 的"设置"应用 |
EmojiTimeFormatter | ★77 | 将日期/时间转化为 emoji 表情。 |
LFTimePicker | ★63 / Y | 自定义时间选择器ViewController,可在Swift中选择开始时间和结束时间。 |
TimePicker | ★13 | 基于平移手势及其速度的可配置时间选择器组件。 |
工具类/语法增强
辅助开发的一些工具类,语法增强库等。
地址 | Stars/Siwft | 简介 |
---|---|---|
YYKit | ★13.5k | YYKit 是一组功能丰富的 iOS 组件,包括 YYModel,YYCache,YYImage 等等很多组件。 |
SwifterSwift | ★8.5k / Y | 提供了 400 多种原生的 Swift4 扩展, 可以大幅提高生产力。 |
BlocksKit | ★6.9k | 让 Objective-C 支持 block 功能,为基础类提供Block支持。 |
libextobjc | ★4.4k | 一个 Cocoa 库,对 Objective-C 编程语言做了功能性的扩展。 |
MMWormhole | ★3.7k / Y | 一个可以在 iOS 应用和扩展之间传递消息的机制。 |
Then | ★3.2k / Y | 一套用户初始化应用程序的语法糖,基于 Swift。 |
iOS-Categories | ★3.1k | ,很是全面的一个扩展。 |
InAppSettingsKit | ★2.9k | 此框架允许将 settings 内置在应用中,而不是进入 iOS 系统的设置APP中。 |
EZSwiftExtensions | ★2.8k / Y | 一组针对 Swift 标准库,Foundation 和 UIKit 的扩展,让你更加简单舒服地编写代码。 |
ObjectiveSugar | ★2.2k | Ruby 风格的 ObjectiveC 附件。 |
Closures | ★1.6k / Y | 其向 UIKit 和 Foundation 中添加了闭包的能力。 |
Underscore.m | ★1.5k | underline.m 是一个小型实用程序库,用于帮助在 Objective-C 中使用常用的数据结构,其使用链式语法来避开无尽的中括号,面向 Objective-C。 |
WhatsNew | ★1.5k / Y | 当用户更新应用程序,WhatsNew 会自动显示新功能的简短描述。 |
RandomKit | ★1.4k / Y | 另一个随机数据生成器,基于 Swift。 |
SwiftTweaks | ★1.3k / Y | 无需重新编译即可调整iOS应用 ! |
SwiftLinkPreview | ★1.1k / Y | 可以从 URL 预览页面,自动获取所有信息,例如标题,相关文本和图像,类似一个爬虫,基于 Swift。 |
Sugar | ★1k / Y | 可以与 Cocoa 搭配的"甜点",支持 Swift。 |
RateLimit | ★920 / Y | 对已有类做的增强,都是经常用的逻辑。 |
BFKit-Swift | ★888 / Y | BFKit Swift 版本。 |
BFKit-Swift | ★888 / Y | 一个基于 Swift 实现的工具集合,包括类、集合类型、扩展等,可以让开发提效,比如,仅通过一个枚举就可以使用 iOS 中的每种iOS字体。 |
VTAcknowledgementsViewController | ★858 | 一个针对 “Acknowledgements”/“Licenses”/“Credits” 的视图控制器,就是通常放在 "关于" 的那些。 |
Pantry | ★851 / Y | Pantry 是一种轻量级的库,可以持久话用户数据,缓存相关对象结构,以供以后检索,适用于低版本的 Swift。 |
ObjectiveKit | ★817 / Y | 针对 Objective-C 的运行时函数提供了对 Swift 友好的 API。 |
BFKit | ★811 | 国外的一个大神写的很好用的功能扩展类库,比较齐全。 |
BFKit | ★811 | 一套针对 Objective-C 的集合类库,可以让开发提效。 |
ReadabilityKit | ★734 / Y | 一个新闻,文章和全文的元数据提取器,像一个爬虫页面解析程序,基于 Swift。 |
YOLOKit | ★665 | Getting square objects down round holes( 让方块透过圆洞 可能是个比喻,没太理解有什么用)。 |
SwiftFoundation | ★619 / Y | 跨平台,面向协议的编程基础库,是对 Swift 标准库的补充。(纯Swift,支持Linux)。 |
Validated | ★604 / Y | 是一个微型框架(大于50行源代码行),可以轻松生成新类型的工具,使您更好地利用Swift的类型系统。 |
AssistantKit | ★555 / Y | 检测 iOS 设备属性、操作系统版本和使用屏幕尺寸的简便方法,基于 Swift。 |
SwiftRandom | ★541 / Y | 一个随机数据生成器,做 Demo 或者 测试的时候比较有用。 |
Eject | ★526 / Y | 可以从 Interface Builder 生成 swift 代码,用来替换 .xib 文件。 |
Retry | ★481 | 有时需要做重试逻辑,那么可以使用这个框架,其可以自定义重试次数。 |
SwiftAI | ★456 / Y | SwiftAI, 智能编写 Swift代码。SwiftAI现在可以从 JSON 生成模型类。支持 Codable 和 HandyJSON。 |
SwiftyUtils | ★426 / Y | 在每个项目中需要的那些所有可重用代码,是对原有数据结构的增强。 |
ios_system | ★401 | 是对 system() 的替代品。 |
Standard Template Protocols | ★387 | 该库尝试使用面向协议的编程来解决iOS应用中一些最常见的重复模式,并减少创建深层,复杂的子类树。 |
DeviceGuru | ★364 / Y | DeviceGuru 是一个简单的库(Swift),用于了解设备的确切类型,例如 iPhone 6或iPhone 6s。 |
MKUnits | ★342 / Y | 一个基于 Swift 的计量单位转换库。 |
ReflectableEnum | ★334 | 通过宏和一组函数为 Objective-C 中的枚举类型引入了反射能力。 |
Scale | ★319 / Y | 一个基于 Swift 的单位转换工具 (可以通过 CocoaPods 获取)。 |
XestiMonitors | ★267 / Y | 一个可扩展的监控框架(针对系统生成的事件),基于 Swift。 |
Kvitto | ★259 | 用于 Apple 应用商店收据验证。 |
AppVersionMonitor | ★253 / Y | 轻松监控 iOS 应用版本。 |
Datez | ★251 / Y | 针对 NSDate 、 NSCalendar 和 NSDateComponents 做了功能增强,基于 Swift。 |
OrderedSet | ★233 / Y | 一个提供了排重且有序的集合数据类型,本质上是 Foundation的NSOrderedSet/NSMutableOrderedSet的Swift 等效项。该集合类型具有快速的查询性能,可以支持通过泛型的强类型输入,因此我们可以在其中存储 Swift 结构和枚举。 |
YAML.framework | ★221 | 基于 LibYAML 的 YAML Objective-C 解析工具。 |
Cent | ★217 / Y | 一套针对 Swift 标准库和类的扩展。 |
SwiftParsec | ★179 / Y | SwiftParsec 是 Parsec 解析器组合器库的Swift端口, 它允许从一组简单的解析器中创建复杂的解析器, 扩展可用的解析器也很容易 |
ZamzamKit | ★168 / Y | 一个微型扩展库,针对标准库,Foundation 和 UIKit 做了扩展。 |
MoyaSugar | ★150 | 针对 Moya 的语法糖, Moya是一个优雅的网络抽象层,但当应用程序变大时,它将变得庞大。 |
Outlets | ★129 | 用户验证 IBOutlet 和 IBAction 连接的函数工具箱。 |
DuctTape | ★125 / Y | 提供一种链式语法糖,用于方便地查找对象的成员属性。 |
FluxCapacitor | ★125 / Y | FluxCapacitor 通过协议和类型别名使实现 Flux 设计模式变得容易。 |
DefaultStringConvertible | ★123 / Y | CustomStringConvertible 的 Swift 实现。 |
ActionClosurable | ★117 / Y | 一个扩展,用来将 objc-style target/action 转成 swifty 闭包。 |
MissionControl-iOS | ★106 / Y | 一个强大的远程配置工具,基于 Swift (适用于多平台 iOS、 watchOS、 tvOS、 macOS). |
XExtensionItem | ★82 | XExtensionItem 小型库,可让 iOS 程序和应用扩展之间更轻松地共享结构化数据。 |
Notificationz | ★73 / Y | 帮助您在 Swift中可以方便地访问 NotificationCenter。 |
VersionTrackerSwift | ★72 / Y | 用来跟踪用户以前安装过的应用程序版本。 |
SwiftSortUtils | ★59 / Y | 该库旨在使 Swift 中的排序更加轻松, 它还允许在 Swift 中重用旧的 NSSortDescriptor 实例。 |
EasyAbout | ★51 | 一种使用设置捆绑包(Settings Bundle)轻松将 CocoaPods 许可和 App版本添加到iOS App的方法。 |
OpenSourceController | ★51 / Y | 一个在应用程序中许可(使用了那些开源库,他们都有不同的开源许可)的最简单方法。 |
OpinionatedC | ★50 | Objective-C 继承更多 Smalltalk 特性。 |
SwiftProvisioningProfile | ★50 / Y | 可将配置文件解析为 Swift 模型。 |
Once | ★40 | Once 可以让你用直观的 API 管理任务的执行次数,有中文文档。 |
App-Update-Tracker | ★23 | 一个简单的库,用户检测应用的 安装/更新 行为, 基于 Objective0-C |
ContactsWrapper | ★20 | 一个 Objective-C 封装,带有的联系人和联系人组。 |
AEAppVersion | ★10 / Y | 一个简单轻巧的应用程序版本跟踪工具,基于 Swift。 |
UnsupportedOSVersionAlert | ★8 | 如果用户使用的应用程序具有不受支持的 iOS版本(例如,iOS Beta),则会通过弹出窗口提醒用户。 |
TimeLord | ★7 / Y | 基于 Swift,可以轻松对 DateTime(NSDate)进行管理。 |
BundleInfos | ★1 | 针对 Bundle 的简单的 getter 方法,可以从 Bundle 中获取信息。 |
布局工具/自动布局
布局相关教程
- 《iOS页面的布局方式》
- 《iOS 常用布局方式之Frame》
- IOS不用AutoLayout也能实现自动布局的类(1)----MyLinearLayout横空出世
- IOS不用AutoLayout也能实现自动布局的类(2)----MyFrameLayout横空出世
- IOS不用AutoLayout也能实现自动布局的类(3)----MyRelativeLayout横空出世
自动布局:
布局相关框架
- 自动布局、UI框架和一系列简化布局结构的工具 *
- Auto Layout Magic - 构建1个场景,让“Auto Layout Magic”为您生成约束! 场景在所有设备上看起来都很棒!
- 当view隐藏的时候也隐藏其autolayout的NSLayoutAttribute - 当view隐藏的时候也隐藏其 autolayout 的 NSLayoutAttribute,从而不用大量的代码工作.
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
Masonry | ★17.7k | 利用简化的,可链接的和富有表现力的语法来使用 AutoLayout NSLayoutConstraints的功能。一个轻量级的布局框架, 同时支持 iOS 和 Mac OS X, 语法优雅, 帮助开发者快速适配不同分辨率的 iOS 设备 |
SnapKit | ★16.5k / Y | 适用于iOS 和 macOS 的 Swift Autolayout DSL,在代码中纯手工创建约束灰常痛苦,但幸运的是我们有了SnapKit,在board中用上它,你可以简单直观地编写约束了。如果你使用 Autolayout 布局,Snapkit 就是最好的第三方库。完整的提供了底层的能力。创造性的引入链式编程,让使用起来非常的方便。 |
AsyncDisplayKit | ★13.3k | 是一个 iOS 框架,异步界面渲染库,为极限优化View效果而生,它能够使一个很复杂的用户界面保持平滑和反应灵敏(同时提供 UIView bridge 接口),facebook 出品。 |
YogaKit | ★13.2k | 实现Flexbox的强大布局引擎。 |
FDTemplateLayoutCell | ★9.8k | 自动进行单元布局的模板,用于自动计算UITableViewCell高度 |
PureLayout | ★7.4k / Y | 适用于iOS和macOS自动布局的终极 API — 极其简单,功能强大。 与Objective-C和Swift兼容。 |
Cartography | ★7.1k / Y | 用于 Swift 的声明式自动布局 DSL。 |
SDAutoLayout | ★5.8k | AutoLayout 一行代码搞定自动布局!支持Cell、Label和Tableview高度自适应,致力于做最简单易用的AutoLayout库. |
Neon | ★4.6k / Y | 一个强大的 Swift 可编程的 UI 布局框架。 |
SwiftBond | ★4k / Y | Bond是一个Swift绑定框架,它将绑定概念提升到了一个全新的水平,其简单,强大,类型安全和支持多种范例的。 |
MyLinearLayout | ★3.9k | MyLayout是由Objective-C实现的功能强大的iOS UI框架。它集成了 Android Layout,iOS AutoLayout,SizeClass,HTML CSS float、flexbox 和 bootstrap 的相关功能。 |
TinyConstraints | ★3.4k / Y | 使“自动布局”更适合人类使用的"语法糖" |
LayoutKit | ★3k / Y | LayoutKit是一个用于iOS的快速视图布局库。 |
Stevia | ★2.9k / Y | 一个优雅的视图布局方案 |
Layout | ★2.1k | 一个iOS的声明性UI框架。 |
layout | ★2.1k / Y | iOS 的声明式 UI 框架 |
EasyPeasy | ★1.8k / Y | 让自动布局变得更简单 |
FLKAutoLayout | ★1.5k | 让使用代码做约束更加简便的 UIView 类别。 |
PinLayout | ★1.5k / Y | 快速的 Swift 视图布局控制框架,没有用到自动布局,没有什么"魔术特性", 纯代码, 可以做到完全控制,语法简洁,直观。 |
FlexLib | ★1.4k | FlexLib 是用 Obj-c 语言编写的ios布局框架。 该布局框架基于flexbox模型,这个模型是web端的布局标准。基于flexbox模型,FlexLib提供了强大的布局能力,并且易于使用。 |
UIView-FDCollapsibleConstraints | ★1.1k | 一个AutoLayout辅助工具,最优雅的方式解决自动布局中子View的动态显示和隐藏的问题。第二个Demo模拟了一个经典的FlowLayout,任意一个元素隐藏时,底下的元素需要自动“顶”上来,配合这个扩展,你可以在IB里连一连,选一选,不用一行代码就能搞定. |
FlexLayout | ★1.1k / Y | FlexLayout以简洁,直观且可链接的语法将高度优化的facebook / yogaflexbox 实现封装。 |
TangramKit | ★931 / Y | TangramKit 是一套在Swift3.0语言上开发的iOS界面视图布局框架。它的名字来源于中国古代的玩具七巧板,寓意着可以用简单的功能来构造出各种千变万化且非常复杂的UI界面。 |
WHC_AutoLayoutKit | ★855 | 致力打造使用最简单功能最强大的自动布局开源库. |
SwiftBox | ★812 / Y | Swift中的Flexbox,使用Facebook的css布局。 |
Classy | ★771 | Classy是一个能与UIKit无缝结合stylesheet(样式)系统。它借鉴CSS的思想,但引入新的语法和命名规则,Classy官网,Masonry、Classy、ClassyLiveLayout介绍. |
Façade | ★697 | 可编程的视图布局,一个 autolayout 的替代品。 |
SwiftAutoLayout | ★656 / Y | 一个用于 Autolayout 的轻量级 Swift DSL. |
BrickKit | ★620 | 通过 BrickKit,您可以用一种简单的方式创建复杂且响应迅速的布局,它易于使用和扩展,可以基于此创建自己的组件。 |
Anchorage | ★563 | 一套简化iOS布局代码的运算符和实用程序的集合。 |
Relayout | ★562 / Y | 用于在功能上声明自动布局约束的 Swift 轻量框架。 |
ios-flexboxkit | ★404 | 一个封装了 Flexbox 布局的简单 UIKit 扩展。 |
EasyAnchor | ★404 | 声明式,可扩展的,强大的自动布局库 |
Layoutless | ★381 / Y | 基于 AutoLayout 的简约声明式布局和样式框架。 |
NerdyUI | ★362 | 好用的快速布局 UI 库,适用于 iOS 8 及以上版本. |
MisterFusion | ★315 / Y | 一种用于自动布局的 DSL,另外它有非常清晰但简洁的语法,且可以在Swift和Objective-C中使用。 |
ManualLayout | ★286 | 易于使用且灵活的库,为iOS和tvOS手动布局视图和图层。支持AsyncDisplayKit。 |
ClassyLiveLayout | ★281 | ClassyLiveLayout通过结合Classy stylesheets与Masonry一起使用,能够在运行的模拟器中微调Auto Layout约束实时显示效果的工具,Masonry、Classy、ClassyLiveLayout介绍. |
EZLayout | ★275 | IOS中百分比布局库,自动布局可以goodbye了 |
Cupcake | ★267 / Y | 为iOS创建和布局UI组件的简便方法。 |
Yalta | ★206 | 直观而强大的Auto Layout 库。 |
QuickLayout | ★178 | QuickLayout提供了一种简单的方法,可以轻松地在代码中管理自动布局。 |
Framezilla | ★133 | 一个通过优雅的链式语法封装的框架。 |
Compose | ★125 | Compose是一个帮助您组合复杂动态视图的工具库。 |
Swiftstraints | ★112 / Y | 让 Swift 处理自动布局更轻松。 |
CassowarySwift | ★104 / Y | A Swift port of the Cassowary linear constraint solver(留给网友吧,不知道怎么翻译合适) |
Manuscript | ★78 / Y | 纯 Swift 实现的 AutoLayoutKit. |
Bamboo | ★77 / Y | Bamboo 使自动布局(包括手动布局)更加优雅而简洁。 |
Anchorman | ★77 | 一个自动布局库。 |
Restraint | ★77 / Y | Swift中的最小自动布局方案。 |
SuperLayout | ★52 | 使用超级语法糖简化自动布局。 |
FormationLayout | ★51 | Work with auto layout and size classes easily. |
EEStackLayout | ★48 | 结构化的垂直堆栈布局。 |
CGLayout | ★38 / Y | 基于约束的强大自动布局框架,可以管理UIView(NSView),CALayer和未呈现的视图,注意不是Apple Autolayout的封装。 |
JRSplitVC | ★30 | 自适应布局的 UISplitViewController。 |
AutoLayoutPlus | ★25 / Y | 对 AutoLayout 的一点增强,基于 Swift。 |
FlightLayout | ★22 | 处理手动布局和自动布局之间的平衡, 非常适合处理复杂的动画帧。 |
SugarAnchor | ★20 | 和 NSLayoutAnchor和NSLayoutConstraints 一样,但具有更自然且易于阅读的语法糖, 类型安全,简明易读。 |
Autolayout_Demo | ★19 | 在项目中用自动布局实现的类似抽屉效果. |
SwiftyLayout | ★15 / Y | 轻松处理自动布局和尺寸。 |
SnapLayout | ★10 | 简洁的Auto Layout API,可以链接程序约束,同时轻松更新现有约束。 |
MiniLayout | ★7 | 最小的自动布局便利层,程序约束比较简洁。 |
QLayout | ★2 | AutoLayout 工具集. |
RKAutoLayout | ★1 | AutoLayout的简单包装。 |
数学运算工具
相关教程
相关框架
数学框架,函数和库,可用于自定义操作,统计计算等
地址 | Stars/Siwft | 简介 |
---|---|---|
iosMath | ★1.1k | 一个用来显示漂亮的数学公式的库,支持 LaTeX 。 |
Euler | ★1.1k / Y | Swift自定义数学运算符。 |
Metron | ★1k | Metron是几何函数和类型的大集合,这些函数和类型扩展了CoreGraphics提供的2D几何元素。 |
SigmaSwiftStatistics | ★597 / Y | 统计计算功能的集合。 |
Expression | ★581 | 用于在运行时计算数值表达式的Mac和iOS库。 |
BigInt | ★554 / Y | 纯Swift实现的任意精度算法。 |
VectorMath | ★282 / Y | 实现常见的2D和3D矢量和矩阵功能,对游戏或基于矢量的图形很有用,基于Swift,可以用在 Mac 和 iOS上。 |
SwiftMath | ★169 / Y | Swift的数学框架。 包括:向量,矩阵,复数,四元组和多项式等。 |
Upsurge | ★162 / Y | 一个 Swift 数学库. |
Arithmosophi | ★64 / Y | 一组用于算术和逻辑运算的协议。 |
NumericAnnex | ★63 / Y | NumericAnnex补充了Swift标准库中提供的数学函数。 |
Swift-MathEagle | ★40 / Y | 使数学变得容易的通用数学框架。目前支持函数求解和优化、矩阵和向量代数、复数、大整数和大分书以及一般常用的函数和扩展。 |
Surge | ★5 / Y | 一个使用Accelerate 的Swift库,为矩阵数学,数字信号处理和图像处理提供高性能支持。 |
正则表达式
正则表达式相关文章
- 《swift中的正则表达式》 - 介绍比较详细,例子比较多。
- 《swift中常用的正则表达式》 - 简明扼要
- Swift:正则表达式方法(根据正则表达式从特定字符串中提取数据)
正则表达式框架
地址 | Stars/Siwft | 简介 |
---|---|---|
Regex | ★557 / Y | 一个 Swift 微型框架,提供了基于 NSRegularExpression 的正则表达式类型,让字符串的匹配、替换、提取都很方便,如同砍瓜切菜。 |
Regex | ★290 / Y | swift 的正则表达式解析框架 |
PySwiftyRegex | ★221 / Y | 在 Swift中以类似 Python 方式轻松处理正则表达式 。 |
SwiftRegex | ★119 / Y | 类似于 Perl 语法的正则表达式操作符,基于 Swift. |
Regex | ★70 / Y | 一个 Swift 正则表达式框架,基于 NSRegularExpression 的封装. |
UI组件
UI 设计资源
地址 | Stars/Siwft | 简介 |
---|---|---|
design-resource | ★2.3k | 设计师资源列表. |
UI 设计相关网站
- Dribbble - 设计师必备站点,国内顶尖的设计师都在上面。
- Louie Mantia - apple设计站点,网站提供免费的icon图片和桌面以及UI设计下载和使用。
- Lovely UI - 可爱的UI手机界面设计站点,一个致力于智能手机界面设计作品展示的博客网站,由众多程序界面设计师上传分享出来的,该网站分类详细,用户可以更加分类来查看不同的界面UI设计,要想提高自己的设计能力就需要去取经,该网站就是你取经的必备网站之一。
- UI中国 - 前身为iconfans,是国内专业的UI设计师交流、学习与展示的平台。
- 学UI网 - 一个发布高质量设计教程和分享设计经验的UI学习平台。
- 花瓣网 - 设计师寻找灵感的天堂!图片素材领导者,帮你采集,发现网络上你喜欢的事物。
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
UI Parade | ★128 | 灵感UI设计网是一个致力于设计师UI设计作品分享的网站,提供很多有才华的设计师们的优秀作品,帮助设计师们获得UI方面的设计灵感,提供丰富的设计参考案例,同时还提供收费版的在线设计工具。 |
优设 | ★128 | 优秀网页设计联盟(SDC),是有着良好职业交流氛围的网页设计行业联盟。 |
Material Design 系列:
- Material Design - Material Design 官网,Google推出的全新的设计语言,谷歌表示,这种设计语言旨在为手机、平板电脑、台式机和“其他平台”提供更一致、更广泛的“外观和感觉”。官网
- Material Palette - Material Palette 网站是一个致力于为设计师们提供颜色组合搭配的工具,让设计师轻松的选择自己喜欢的颜色,在线生成Metaerial Design 风格配色的搭配方案,让你从烦乱的颜色中筛选出一条极具创意的颜色组合。
- Material Design Color 全新指南 - 它还允许开发者检查配色方案中任何文字是否清晰可辨。 Google采用了标准方法,该工具根据W3C的“Web内容无障碍指南”对每个方案进行判断。其中很大一部分重点在于开发者可以据此做出设计决策,以确保视觉障碍用户也可以清晰阅读。
设计师导航:
UI 相关可用资源(素材)
APP UI 图标:
- Iconfont - 阿里巴巴矢量图标库, 个人最常用的一个图标下载网站, 自定义尺寸、颜色,SVG、AI、PNG格式,都可自由选择。
- IconStore - 收录许多精致、独特的图标集; 可免费下载,无须注册或登入账号; 图标可用于个人或商业项目,免标注出处或原作者。
- Glyph - SmartIcons出品的一套 SVG 图标。
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
material design icons | ★40.3k | Material Design 图表 |
APP 模板素材:
- UPlabs - 有很多免费的素材(图表,整个APP模板等)可以下载。
UI 套件资源
- CodeApp - 收录大量的 UI 组件,主要是有在线预览功能,一目了然,包括OC 和 Swift 的,还有部分 Javascript 的。
- UI4App - APP 开发所使用素材库,有很多免费素材。
- Cocoa Controls(英文) - 适用于 iOS 和 macOS 的开源 UI 组件大全,类似于 CodeApp。
- ComponentKit - 一套类似于 React 的iOS视图框架,Facebook 出品。
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
awesome-ios-ui | ★10.8k | 一组精心筛选的iOS用户界面/用户体验库列表,有预览截图。 |
QMUI_iOS | ★5.6k | 腾讯出品 QMUI iOS——致力于提高项目 UI 开发效率的解决方案 http://qmuiteam.com/ios |
JXCategoryView | ★4.6k | A powerful and easy to use category view (segmentedcontrol, segmentview, pagingview, pagerview, pagecontrol) (腾讯新闻、今日头条、QQ音乐、网易云音乐、京东、爱奇艺、腾讯视频、淘宝、天猫、简书、微博等所有主流APP分类切换滚动视图). |
Awesome App Landing Page | ★235 | 30 秒为 iOS 配置一个落脚页。 |
YXYDashLayer | ★174 | Colorful Rounded Rect Dash Border. |
Awesome-Mobile-UI | ★127 | 一组移动APP的UI组件库,包括iOS和Android,(英文),有截图。 |
Yalantis | 致力于提供世界一流的 Android 和 iOS 应用开发服务, 因一些动画很棒的开源库为大家所熟知。 | |
Material-Controls-For-iOS | Many Google Material Design Controls for iOS native application. | |
Material-Controls-For-iOS | 大神模仿谷歌做的各种各样的iOS原生特效控件,非常全面. |
iOS UI Template/模版
- iOS UI Design Kit
- iOS Design Guidelines
- iOS GUI by Facebook Design Resources
- App Icon Template
- iOS 8 GUI PSD Template
- iOS Design Guidelines
Prototyping/原型
Activity Indicator/动作指标器控件/进度条
- today extension - 用纯代码构建一个Widget(today extension).
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
MBProgressHUD | ★15.6k | 用于显示一个半透明的 HUD,当任务在后台线程结束时可以在上边显示一个指示器或标签。 |
SVProgressHUD | ★12.1k | 一个简洁轻量的 HUD |
NVActivityIndicatorView | ★9.2k / Y | 一组 loading(加载中)的动效和组件。 |
SkeletonView | ★9.1k / Y | 一种比较优雅的准备加载内容方式,用于向用户展示正在发生的事的方式。 |
AwesomeMenu | ★5.1k | 最多人用的Path菜单. |
NJKWebViewProgress | ★4k | 一个针对 UIWebView 的进度控制接口库,可以用此模块为内置浏览器组件添加进度条, 思路很好。 |
M13ProgressSuite | ★3.9k | 用于在 iOS 上显示进度的套件,包含很多工具。 |
PKHUD | ★3.4k / Y | 一个针对 Apple HUD(Apple HUD (Volume, Ringer, Rotation,…)) 的 Swift 重新实现,知识 iOS 8+ 以上的版本。 |
JGProgressHUD | ★2.8k / Y | 一个优雅和简单的进度条 HUD,兼容Swift和ObjC。 |
CMPopTipView | ★2.7k | 自定义气泡View提示框. |
MRProgress | ★2.6k | 针对下拉组件的客户刷进度条的合集 |
DACircularProgress | ★2.4k | DACircularProgress 是 UIView 子类,具有环装进度条效果。 |
FillableLoaders | ★2k | 自定义加载进度UI。 |
FillableLoaders | ★2k / Y | 一个完全可定制的,基于 CGPaths 的进度条件loader,基于 Swift 实现。 |
SwiftSpinner | ★1.9k / Y | 一个标量的动作指示器以及模态告警框,具有模糊半透明效果,扁平化,设计比较大胆。 |
DGActivityIndicatorView | ★1.8k | DGActivityIndicatorView 是使 loading 更好看的好方法,它包含32种不同的样式。 |
ImagePickerSheetController | ★1.5k | 图片或视频选择器(可多选)组件及其示例项目. |
ProgressHUD | ★1.5k | 另一个简单轻量的 HUD,基于 Objective-C |
FeSpinner | ★1.5k | 很多酷炫的加载动画,可以借鉴一下 |
ImagePickerSheet | ★1.5k | 图片或视频选择器(可多选)组件及其示例项目. |
LiquidLoader | ★1.2k / Y | 带有流体效果的 Loader 组件。 |
YLProgressBar | ★1.2k | 是 UIProgressView 的重新实现,基于 Core Graphics 实现,且完全高可定制。 |
ASProgressPopUpView | ★1.2k | 弹出的进度条显示进度. |
KYCircularProgress | ★1.1k / Y | 简单、实用路径可定进程条。 |
MKRingProgressView | ★1k / Y | 一个环形进度条组件,效果类似于 Apple Watch 上的 Activity 这个应用 , 基于 Swift. |
FFCircularProgressView | ★1k | FFCircularProgressView - 一个蓝色圆圈进度条。 |
UAProgressView | ★1k | 很赞 的一个进度指示View. |
ParticlesLoadingView | ★934 | 一个可自定义的 SpriteKit,用于在视图边框上展示动画。 |
MBCircularProgressBar | ★913 | 一个圆形,有动画效果且高度可定制的进度条,可使用 IBDesignable 在 Interface Builder 中进行编辑。 |
Windless | ★897 / Y | Windless 让不可见 loading view 的实现变得更加容易。 |
KDCircularProgress | ★861 / Y | 具有渐变效果的圆形进度条,基于 Swift。 |
MMProgressHUD | ★716 | 设置HUD出现和消失的方式(包括上下、左右、淡入淡出、放大缩小等等),设置HUD的内容(可以在HUD中加入帧动画、动态图片等等),设置HUD出现时的底部覆盖层颜色,等等。总而言之,这是一份集大成的HUD代码. |
AlamofireNetworkActivityIndicator | ★620 | 控制iOS上网络活动指示器的可见性,基于 Alamofire |
GearRefreshControl | ★614 / Y | 一个用户 UIRefreshControl 的自动以动画效果库。 |
WSProgressHUD | ★586 | 一个漂亮的 hud 视图控件。 |
WaveLoadingView | ★579 | iOS 唯一完美的波浪进度加载指示器,实现说明. |
EZLoadingActivity | ★565 / Y | 一个轻量级的 HUD |
MediumScrollFullScreen | ★556 / Y | Medium的可扩展滚动页面,上下滚动时,全屏显示内容,并自然消隐上下菜单。由此项目感知,作者是一位很注重细节的开发者,他的另外几个菜单类项目也都不错,值得参考,比如:PathMenu, MediumMenu 等. |
Skeleton | ★551 | 一种创建滑动 CAGradientLayer 动画效果的简单方式, 非常适合创建用于加载内容的框架屏幕(就是内容加载中,还没有加载完成的的背景展示效果)。 |
iOS-CircleProgressView | ★471 | 此控件将允许用户使用实例化的代码或界面生成器来创建和渲染圆环进度条视图。 |
BigBrother | ★451 | 自动第为已执行的请求 设置网络可用指示器。 |
STLoadingGroup | ★428 | 一个 loading 视图. |
iOS Circle Progress Bar | ★407 | iOS 的圆形进度条。 |
SDProgressView | ★404 | 简便美观的进度指示器,此系列共有六种样式的进度指示器. |
WeChatFloat | ★394 | 仿微信浮窗功能. |
GradientLoadingBar | ★389 / Y | 一个有渐变动画效果的 loading bar. |
RSLoadingView | ★380 / Y | 一个基于 3D 引擎的加载效果,基于 Swift。 |
JZMultiChoicesCircleButton | ★379 | 三维多选按钮. |
DSGradientProgressView | ★373 / Y | 一个简单且带有动画效果的进度条,基于 Swift。 |
FlexibleSteppedProgressBar | ★349 | 一个美观易用的,可定制的阶段步骤进度条组件。 |
CircularProgressControl | ★334 | 一个环形进度控制条. |
Hexacon | ★324 / Y | 类似于 Apple Watch 上的 SpringBoard 这个应用的内容展示效果。基于 Swift. |
ZZCircleProgress | ★280 | draw rect 实现的圆形进度条。可以使用部分圆弧当做整个进度条,并可以随意设置起始角度及减少的圆弧角度大小. |
SnapTimer | ★271 | Snapchat story 计时器的实现。 |
KYNavigationProgress | ★244 | 一个 UINavigationController 的简单扩展,用于在 UINavigationBar 上显示进度。 |
RHPlaceholder | ★232 | 一个简单的库,可以让你添加类似 Facebook 的加载状态效果。 |
RPCircularProgress | ★224 / Y | 具有 UIProgressView 属性的环形进度条,是 UIView 子类,基于 Swift。 |
GradientProgressBar | ★214 / Y | 一个渐变效果进度条 (UIProgressView). |
StepProgressView | ★214 / Y | 带有标签和形状的步骤进度条,是 UIActivityIndicatorView 和 UIProgressView 很好的替代品。 |
ActivityIndicatorView | ★199 / Y | 一组基于 SwiftUI 的 loading 指示器。 |
RPLoadingAnimation | ★192 / Y | 基于 Swift CALayer 的 Loading 动画。 |
HorizontalProgress | ★180 | 简单的动画水平进度条。 |
BLEProgressView | ★169 | 使用pop实现动画的进度条. |
JDBreaksLoading | ★150 | 一个游戏性质的指示器,弹珠游戏效果,算是比较标新立异了。 |
StatusBarOverlay | ★147 | 当应用失去/获得玩过连接时,自动显示/隐藏“无网网络连接”状态栏,它支持隐藏状态栏和“缺口”的应用程序。 |
PreLoader | ★145 | 一个很有意思的HUD loading ,通过运动污点和固定污点之间的粘黏动画吸引用户的眼球跟踪,能有效分散等待注意力。PreLoader的实现讲解. |
LoopProgressDemo | ★144 | 环形渐变进度条,环形渐变进度条实现. |
LinearProgressBar | ★144 | 受到 Google Material Design 启发的线性进度条。 |
VHUD | ★139 | 一个简单的 HUD. |
IHProgressHUD | ★103 / Y | 简单的 HUD, 线程安全, 支持 iOS, tvOS。 |
Loader | ★100 / Y | 一个胶囊效果的 Loader 指示器,基于 Swift。 |
LinearProgressBar | ★98 | 一个具有多种样式的线性进度条。 |
KSToastView | ★97 | 类 Android-toast 提醒 |
ZFProgressView | ★88 | A simple digit progress view.(version1.3 使用GCD定时器代替NSTimer,避免内存泄露问题). |
KNCirclePercentView | ★81 | 一个自定义动画的圆形进度View. |
MHRadialProgressView | ★79 | iOS 径向动画进度控件。 |
JHProgressHUD | ★79 / Y | 一个简单轻量的 Swift 框架,用于在 iOS 应用中显示 |
SVUploader | ★76 | 一个简单易用的,且美观的文件上传进度条组件。 |
DBMetaballLoading | ★71 / Y | 一个 metaball 效果的 loading 控件, 基于 Swift |
EBuyCommon | ★68 | 1.基于MBProgressHUD实现得图形加载提示方式,及其它标题方式提醒。2.弹窗. |
MKProgress | ★66 / Y | 一个轻量级 ProgressHUD ,基于 Swift 实现。有点像 MBProgressHUD/SVProgressHUD/KVNProgressHUD. |
SendIndicator | ★59 | 有一个指示器。 |
BPCircleActivityIndicator | ★43 | 一个轻量级,还比较好看的动作指示器。 |
ALThreeCircleSpinner | ★42 / Y | 一个脉冲效果的指示器,基于 Swift |
BPBlockActivityIndicator | ★40 | 一个简单美观的加载效果组件,其中的砖块动画效果比较有意思。 |
DottedProgressBar | ★38 | 一个简单、可定制,带有豆点动画效果的进度条。 |
LLSpinner | ★32 | 一个创建全屏指示器的简单方法。 |
TopAlert | ★30 | 顶部提示View. |
KJLoadingDemo | ★14 | 汇集整理一些样式的Loading加载等待动画,封装以及简单调用,使用起来也非常方便快捷,同样你也可以把他作为HUD来使用 |
RetroProgress | ★10 / Y | 90年代风格的复古进度条。 |
SwiftProgressHUD | ★1 / Y | SwiftProgressHUD is a user-friendly pure swift HUD. 支持Cocoapods 及 Carthage. |
ProgressView/进度条
相关教程
相关框架、组件
地址 | Stars/Siwft | 简介 |
---|---|---|
GradientCircularProgress | ★373 / Y | 一个 Swift 中的可自定义进度指示器库。 |
ProgressMeter | ★107 | 在仪表控件中显示进度。通过ProgressMeter,您可以创建自定义注释,这些注释显示在仪表的顶部或底部。 |
Alert & Action Sheet/告警框/提示框/对话框
相关教程
相关框架组件
- ActionSheetPicker-3.0 - 该项目是此前热门项目ActionSheetPicker的新版本,快速复制了iOS 8上的下拉 UIPickerView/ActionSheet功能.
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
SwiftMessages | ★5.5k / Y | 一个用 Swift 实现的非常灵活的消息栏。 |
TSMessages | ★5k | 在屏幕上方显示通知(比如成功、错误、警告或者消息)视图,很好用。 |
SCLAlertView-Swift | ★5k / Y | 一个漂亮的有动画效果的告警框组件,基于 Swift。 |
Alerts-Pickers | ★4.8k / Y | UIAlertController with TextField, DatePicker, PickerView, TableView 等组件的高级用法。 |
Alerts & Pickers | ★4.8k / Y | 原生 UIAlertController(伴有 TextField, DatePicker, PickerView, TableView 和 CollectionView.) 的高级用法。 |
BulletinBoard | ★4.7k / Y | 在 iOS 上生成和显示位于屏幕下方的的 Card 组件的库。 |
CRToast | ★4.2k | 一个 iOS toast 组件,可以满足你对通知功能的一切需求。 |
JDStatusBarNotification | ★3.8k | 一个简单可定制的通知组件,可以再状态栏显示通知。 |
NotificationBanner | ★3.7k / Y | 一个高可定制的,用于显示内置横幅通知组件的最简单方式。 |
Toast | ★3.6k | 和MBProgressHUD差不多 |
SCLAlertView | ★3.4k | 有特色的对话框. |
XLActionController | ★3.1k / Y | 一个完全可定制、可扩展的 action sheet 控制器,基于 Swift 实现。 |
Toast-Swift | ★2.4k / Y | 一个可以在 UIView 上添加 toast 通知的 Swift 扩展。 |
PMAlertController | ★2.2k / Y | PMAlertController 是一个可定制化的组件,是 UIAlertController 的替代品。 |
PMAlertController.Swift | ★2.2k / Y | 可定制弹窗组件替代官版不可定制的 UIAlertController. |
Jelly | ★2.1k / Y | Jelly 只需几行代码就可以提供自定义的视图控制器转换效果。 |
SweetAlert | ★2k / Y | 一个实时有动效的告警框,基于 Swift ,样式也很漂亮。 |
kxmenu | ★1.8k | kxmenu弹出菜单,点击视图上任意位置的按钮,会弹出一个菜单,并且有个小箭头指向点击的按钮,类似气泡视图。弹出的菜单位置会根据按钮的位置来进行调整. |
IOS7AlertView | ★1.7k | IOS7AlertView的对话框。 |
RKDropdownAlert | ★1.6k | UIAlertView 的一个及其简单的替代品。 |
QBPopupMenu | ★1.4k | QBPopupMenu弹出菜单,实现类似 UIMenuItem 的弹出菜单按钮。点击按钮,会弹出一个菜单,上面可以排列多个按钮。纯代码实现,不需要任何图片. |
AMSmoothAlert | ★1.3k | 一个很 cool 的 AlertView。 |
TYAlertController | ★1.3k | 很好很强大的弹出框,多种样式满足你的需求 |
JLToast | ★1.3k / Y | 一个非常简单的 iOS Toast 组件。 |
RMDateSelectionViewController | ★1.1k | 使用 UIAlertController 之类的方式使用 UIDatePicker 来选择日期。 |
CFAlertViewController | ★1k | 一个可以帮助你显示和定制告警框和 Action Sheet 的库。 |
PopMenu | ★987 / Y | 一个酷炫、且可定制的、具有弹出样式的 action sheet |
CDAlertView | ★962 / Y | 一套高可定制的 alert/notification/success/error/alarm 等组件。 |
BRYXBanner | ★961 / Y | 一个轻量级下拉式通知组件,使用Swift,支持 iOS 7+ 以上版本。 |
TBActionSheet.swift | ★913 / Y | 支持Carthage,可自定义度100%的 ActionSheet,支持微信样式. |
Dodo | ★866 / Y | 一个使用 Swift 实现的消息栏。 |
SwiftNotice | ★809 / Y | SwiftNotice 是一个 Swift GUI 库,用于显示各种弹出窗口和通知。 |
LCActionSheet | ★797 | 一款简约而不失强大的 ActionSheet,微信和微博都采取了极其类似的样式. |
FCAlertView | ★762 | 一个可定制的扁平化的 AlertView,面向 Objective-C。 |
PSTAlertController | ★759 | 兼容 iOS7的 XXAlertController,接口跟UIAlertController 一模一样,做到高低版本通用. |
SPAlert | ★745 / Y | 一个弹出式告警组件,参考了 Apple Music 和 Feedback 的样式,包括"完成"(一个对号图表)和心形效果的呈现。 |
Swift-Prompts | ★741 / Y | 用来设计自定义提示的 Swift 库,有很大的范围可供选择。 |
StatusAlert | ★727 / Y | 类似 Apple 系统的自动隐藏式状态警报,而不会中断用户操作流程。 |
NZAlertView | ★710 | 简单直观的 AlertView。类似推送通知的效果。 |
Loaf | ★676 / Y | 针对 iOS Toasts 的一个简单框架。 |
TAOverlay | ★675 | TAOverlay可通过叠加层展示有用的信息,可自定义文本和背景色,添加阴影和模糊效果,以及更改字体大小或者用自定义图片替换页面上的icon. |
SwiftyDrop | ★667 / Y | SwiftHydrop 是一个轻量级的纯 Swift 实现的简单漂亮的下拉信息组件。 |
WCAlertView | ★639 | 自定义的对话框. |
SwiftOverlays | ★609 / Y | SwiftOverlays 是一个 Swift GUI 库,用于显示各种弹出窗口和通知。 |
NYAlertViewController | ★598 | 高度可定制的 iOS 告警框组件,支持自定义内容。 |
TKSwarmAlert | ★562 / Y | 类似于 Swarm(是个iOS应用)的带有动画效果的告警框组件。 |
RMActionController | ★531 | 以类似 UIAlertController 的方式呈现任何 UIView。 |
GSMessages | ★512 / Y | 一个样式简单的消息/通知组件,支持 iOS 7+ 以上版本。 |
TTGSnackbar | ★496 | 在屏幕底部显示简单的消息和动作按钮,有多种动画效果。 |
CFNotify | ★491 / Y | 一个可定制的库,用户创建可拖拽视图组件。 |
InAppNotify | ★435 / Y | 一个应用内通知的管理工具,基于 Swift,管理方式有点像 WhatsApp, Telegram, Frind 等应用. |
Hokusai | ★426 / Y | 一个提供弹出式 action sheet 的 Swift 库。 |
DOAlertController | ★385 / Y | 一个简单的 Alert 告警框组件,基于 Swift 实现,是 UIAlertController 的替代品。 |
RMessage | ★384 | 一个醒目的应用内通知/消息横幅组件,基于 Objective-C。 |
RMPickerViewController | ★382 | 以类似 UIAlertController 的方式使用 UIPickerView 来选择内容。 |
UICustomActionSheet | ★373 | 通过模糊背景来着重强调与菜单相关的元素--模糊效果 里面已经收藏. |
SimpleAlert | ★364 / Y | 一个简单的、容定制的警报框组件,基于 UIAlertController。 面向 Swift. |
HDNotificationView | ★341 | HDNotificationView 可以模拟 iOS 系统的那种横幅通知的效果。 |
CleanyModal | ★340 | 让你轻松使用友好可定制的告警框和 action sheets, 其接口 API 和原生的 UIAlertController 类似。 |
EZAlertController | ★336 / Y | 一个简单的 UIAlertController 控件。 |
MJAlertView | ★296 | 3D效果转场效果警示图--MJAlertView. |
Malert | ★287 / Y | Malert 是用 Swift 编写的一个简单、易用、可自定义的 iOS UIAlertView。 |
NoticeBar | ★239 / Y | 一个由Swift 3编写的简单通知栏,类似于QQ通知视图。 |
Sheet | ★229 / Y | SHEET 可以帮助你创建各种具有导航功能的 action sheets,可以参考 Flipboard App |
LNRSimpleNotifications | ★204 / Y | 一个简单的应用内通知组件,基于 Swift。 LNRSimpleNotifications 一个简化的 TSMessages Swift 接口。 |
DQAlertView | ★196 | 扁平化的样式不错. |
Alertift | ★179 / Y | 一个现代化的 UIAlertController 封装,基于Swift 5。 |
TOActionSheet | ★176 | 针对原生组件 UIActionSheet 的重新时间,提供了可定制设计功能。 |
CustomizableActionSheet | ★174 | 支持包含自定义视图和组件的 Action sheet。 |
CustomPopOverView | ★168 | 自定义弹出视图,内容支持传一组菜单标题,也支持自定义view,或者自定义viewController,支持任意按钮触发,会显示在按钮底部,也支持切换按钮的对齐方式:左对齐、居中、右对齐. |
OpinionzAlertView | ★151 | 一款简洁的提醒框 |
HHAlertView | ★150 | 一个简易的alertview 有三种样式,有成功,失败,和警告三种样式,支持Delegate和block两种回调. |
PCLBlurEffectAlert | ★149 / Y | 一个带有 UIVisualEffectView 的 AlertController,基于 Swift。 |
FloatingActionSheetController | ★142 / Y | FloatingActionSheetController 是一个具有酷炫设计的 ActionSheetController,基于 Swift 实现。 |
BPStatusBarAlert | ★129 | 一个简单的告警框,在状态栏上,在导航栏下方,有点像 Facebook 的效果。 |
STModalDemo | ★116 | 弹出视图(通知,提示,选择,窗口). |
FCAlertView | ★109 / Y | 一个扁平化可自定义的 AlertView , (支持 Swift). |
GMenuController | ★109 | 具有和系统UIMenuController行为,交互一致的Menu弹出控件.相比UIMenuController.具有更加友好的使用方式. 支持MenuItem指定target.使用更加灵活,支持更改menuview 外观设置. |
MaterialActionSheetController | ★104 / Y | 一个类似于 Google 的 action sheet,基于 Swift 实现。 |
LCProgressHUD | ★98 | 对MBProgressHUD的简单封装,比较实用 |
LKAlertController | ★92 / Y | 一个简单的 UIAlertController 构建器,基于 Swift 。 |
Notie | ★86 / Y | 基于 Swift 的应用内通知组件,有可自定义的按钮和文本输入表单。 |
ALRT | ★69 / Y | UIAlertController 的一个简单构造函数,可以随时随地发出警报。 |
RAlertView | ★68 | 有AlertView,iOS弹出窗口,是一个弹出式框架,可以简单方便地将其加入您的项目。 |
JDropDownAlert | ★66 | 一个多方下拉向告警框组件,比如左右拉,上下拉,上/下向左/右拉等等。 |
NotchyAlert | ★64 | 利用 iPhone X 缺口来显示有创意的告警控件。 |
KRAlertController | ★52 / Y | 一个 iOS 彩色告警框,支持多种颜色。 |
Menu | ★44 | 项目中可能会用到的常用菜单,以后有时间会继续补充,弹窗. |
AlertViewLoveNotification | ★39 | 一个简单而吸引人的 AlertView 组件,可以在向用户请求推送通知权限时使用。 |
LIHAlert | ★33 | 一个 iOS 高级有动画效果的横幅提醒组件。 |
CCActionSheet | ★28 | CCActionSheet:仿照微信朋友圈自定义actionsheet,一行代码即可使用. |
GSAlert.swfit | ★26 / Y | 苹果在iOS8推出了全新的UIAlertController,旧的UIAlertView和UIActionSheet渐渐被废弃,但如果你仍然支持iOS7系统,你将不得不写两套代码。GSAlert解决了这个问题. |
OEANotification | ★18 / Y | 一个可自定义的应用内屏幕顶部通知组件,基于 Swift 2.1。 |
PopupViewController | ★17 | UIAlertController 的又一个替代品,支持更多自定义能力。 |
PJAlertView | ★6 | 苹果弃用了原来好用的警告视图,让我们失去了很多的定制性,这个库重新将定制性带回来。 |
CatAlertController | ★5 | 让你像 "老板"一样使用 UIAlertController,其具有简单易用的链式语法。 |
ZFAlertController | ★5 | 一款可高度自定义的弹窗(Alert,ActionSheet),使用方法完全类似UIAlertController |
CuckooAlert | ★5 / Y | Multiple use of presentViewController for UIAlertController.(不确定如何翻译),支持 Swift。 |
Sheet | 可以将视图控制器的工作流程显示为 action sheet,轻量、且无需配置。 |
Popup/弹出框
地址 | Stars/Siwft | 简介 |
---|---|---|
SwiftEntryKit | ★4.7k / Y | 一个高可定制的弹出式告警框、横幅等,提供了各种预设配置,用起来很方便,基于纯 Swift 实现。 |
panelkit | ★3.9k / Y | 手势拖动弹出面板视图 A UI framework that enables panels on iOS. |
FloatingPanel | ★3.7k / Y | 易于使用的浮动面板UI组件. |
PopupDialog | ★3.5k / Y | 一个简单可定制的弹出对话框,用于替换 UIAlertControllers 的告警样式,基于 Swift 实现。 |
LNPopupController | ★2.6k | 是一个可让 View controller 变成弹出式 View controller 的库,效果类似于 Apple Music 和 Podcasts。 |
Presentr | ★2.5k | Presentr 是 iOS 8 中引入的 Custom View Controller Presentation API 的简单可定制的封装。 |
STPopup | ★2.4k / Y | STPopup 提供了弹出式的 UINavigationController,面向 iOS 和 MacOS,基于 Objective-C 实现,但兼容 Swift。 |
MMPopupView | ★2.1k | MMPopupWindow 是用来显示所有弹出框的容器,相对直接显示在当前UIWindow上来说,弄个独立的Window出来当容器的会更好,用户只要关注于弹出框本身的表现就行了,面向 Objective-C。 |
Popover | ★1.8k / Y | Popover 是一个气泡式的弹出效果库,用纯 Swift 实现。 |
Pageboy | ★1.5k / Y | 一个简单、易学的 page |
zhPopupController | ★1.4k | 弹出您的自定义视图很容易,支持自定义蒙版样式,过渡效果和拖动手势。 |
QBPopupMenu | ★1.4k | 长按出现复制粘贴等工具view |
MJPopupViewController | ★987 | |
AZDialogViewController | ★726 / Y | 一个高度可定制的告警对话框控制器,是模仿 Snapchat 的告警对话框。 |
HyPopMenuView | ★720 | 模仿新浪微博弹出菜单. |
DXPopover | ★698 | 很赞 DXPopover微信右上角的+点击展示列表效果,弹窗菜单。 |
MIBlurPopup | ★539 | MIBlurPopup 可以让你创建好看的带有模糊背景的弹出框。 |
FFPopup | ★531 | FFPopup 一个轻量级的库,用于将 view 按照弹出式效果呈现。 |
KGModal | ★467 | 模态弹出框,拖入两个文件就可以集成 |
PopupWindow | ★381 / Y | PopupWindow 是另外一个简单的弹出式 UIWindow ,基于 Swift。 |
YCXMenuDemo_ObjC | ★341 | TCXMenu is an easy-to-use menu. |
PopupController | ★300 | 一个可定制的控制器,用于显示临时弹出视图。 |
GTSheet | ★287 / Y | 一个易于集成的解决方案,用于在底部显示 UIViewControllers。 |
SubscriptionPrompt | ★235 / Y | SubscriptionPrompt 是一个UIViewController,顶部有一个旋转木马,底部有许多行。 用 Swift 编写,也兼容 Objective-C。 |
NMPopUpView | ★194 / Y | 一个简单的 iOS 类,用于显示漂亮的弹出窗口。提供 Swift 和 Objective-C 版本。 |
PopupView | ★170 / Y | 一个基于 SwiftUI 的 Toasts 和弹出效果库。 |
MLMOptionSelectView | ★161 | 弹出-选择-展示框. |
DropDownMenu | ★153 | 仿美团下拉菜单,二级菜单. |
LewPopupViewController | ★140 | ios 弹出视图. |
JKPopMenuView | ★126 | 一个简单的弹出菜单 |
SelectionDialog | ★110 / Y | 一个简单选择对话框,支持 Swift 3+。 |
KCSelectionDialog | ★110 | 简单的选择对话框。 |
XTPopView | ★66 / Y | 一个易用的带箭头的View, 可以实现类似于微信添加好友那个View的效果 (包含Objective-C和Swift版本). |
SHPopup | ★36 | SHPopup 是一个简单的轻量级库,用户弹出视图。 |
DOPScrollableActionSheet | ★1 | 多行可滚动的 Action Sheet. |
Badge/徽章/小红点
地址 | Stars/Siwft | 简介 |
---|---|---|
WZLBadge | ★1.8k | 小红点,Badge,支持横竖屏支持iOS5~iOS8允许高度定制化,包括“红点”的背景颜色,文字(字体大小、颜色),位置等。说明. |
UIBarButtonItem-Badge | ★939 | 按钮上的badge提醒数字 |
PPBadgeView | ★760 / Y | iOS自定义Badge组件, 支持UIView、UITabBarItem、UIBarButtonItem ,支持Objective-C/Swift双版本. |
M13BadgeView | ★511 | badge提醒数字 |
BadgeHub | ★509 / Y | 可以让任何 UIView 组件成为带有动画效果的通知组件,这是一个向 UIView 添加通知徽章组件的快速方式。 |
CustomBadge | ★409 | 自定义样式badge提醒数字 |
swift-badge | ★365 / Y | 一个 iOS 上的徽章视图组件,基于 Swift 实现。 |
MIBadgeButton | ★327 / Y | UIButtons 的通知徽章。 |
EasyNotificationBadge | ★191 | UIView 扩展,用户添加一个通知徽章。 |
Button/按钮
相关教程
相关框架
地址 | Stars/Siwft | 简介 |
---|---|---|
LiquidFloatingActionButton | ★3.6k | 一个有液态效果的浮动 Action 按钮,受到 Material Design 的启发。 |
DOFavoriteButton | ★3.4k / Y | 一个很可爱的动画按钮,基于 Swift 实现。 |
VBFPopFlatButton | ★3.1k / Y | 一个有 21 种不同状态的扁平化按钮,有动画效果,面向 Swift。 |
BEMCheckBox | ★2.5k | 一个 iOS 上的雅致的复选框(Checkbox) |
hamburger-button | ★2.3k / Y | 一款可爱的动态hamburger-button -- (Swift) |
LGButton | ★2k / Y | 一个基于原生 UIControl 的完全可定制的子类,一行代码都不用写就可以创建一个漂亮的按钮。 |
DownloadButton | ★1.5k | 一个可自定义的 App Store 样式下载按钮。 |
ZFRippleButton | ★1.4k / Y | 可定制动效的 UIButton ,灵感来自于 Google Material Design。 |
FRDLivelyButton | ★1.3k | 类facebook动态按钮. 相同类型的其他按钮 : VBFPopFlatButton / FRDLivelyButton |
WCLShineButton | ★1.3k | 类似太阳动画的按钮,有中文文档。 |
Floaty | ★1.2k / Y | 一个浮动的 Action 按钮,还不错。 |
KCFloatingActionButton | ★1.2k | 简洁的 iOS 浮动操作按钮。 |
DynamicButton | ★1.1k / Y | 另一个有动效的扁平化效果按钮,基于 Swift。 |
TVButton | ★1.1k / Y | 一个针对 Apple Tv 视差效果的重新实现,很酷,基于 UIButtons,用 Swift 实现。 |
TransitionButton | ★962 / Y | 一个 UIButton 子类,用于加载中、动画切换等效果。 |
HTPressableButton | ★856 | 一个扁平化、有触压效果的按钮。 |
PPNumberButton | ★827 | 高仿京东淘宝商品数量的加减按钮,可定制程度较高,使用简单. |
PMSuperButton | ★569 / Y | 可通过 Storyboard 进行自定义的 IButton,非常强大。 |
gbkui-button-progress-view | ★543 | 一个类似于 Apple App Store 下载进度按钮的组件。 |
ButtonProgressBar-iOS | ★460 / Y | 一个简单灵活的 UIButton 子类,具有加载/完整动效。 |
OnOffButton | ★425 / Y | 可以自定义开/关动画 UIButton,基于 Swift。 |
TORoundedButton | ★424 | 一个高性能圆角按钮控件。 |
NFDownloadButton | ★415 / Y | 改进过的下载按钮。 |
HySubmitTransitionObjective-C | ★401 | 带转场动画按钮 |
SwiftyButton | ★399 / Y | 一个简单可定制的按钮,基于 Swift。 |
ZMaterialDesignUIButton | ★345 / Y | Swift Material Design 风格 UIButton. |
SSBouncyButton | ★311 | iOS7 风格的弹性按钮 UI 组件。 |
QQBtn | ★296 | 仿QQ未读消息弹性按钮动画,达到和手机QQ未读信息一样的动画效果,效果基本实现. |
JOEmojiableBtn | ★293 | 一个 Emoji 表情筛选器。 |
LTHRadioButton | ★282 / Y | 一个带有动画效果的单选框组件。 |
BTSimpleRippleButton | ★202 | 按钮点击动态光晕效果 |
LLBootstrapButton | ★190 / Y | Bootstrap 3.0扁平化风格按钮,自带图标,一句代码直接调用. |
EasySocialButton | ★166 | 一个创建漂亮设计媒体授权按钮的简单方法。 |
FloatingButton | ★141 / Y | 基于 SwiftUI 、可轻松定制的浮动按钮菜单。 |
JTFadingInfoView | ★127 | 一个基于 UIButton 实现的视图组件,有淡入/淡出动画效果。 |
Hamburger-Menu-Button | ★113 | 一个高度可定制的汉堡包菜单按钮。 |
CatZanButton | ★101 | 动态 '赞' |
DesignableButton | ★92 | 一个具有集中、可重用样式的 UIButton 子类,可以实时查看样式,并可以在 InterfaceBuilder 中自定义! |
ExpandableButton | ★85 / Y | 一个可自定义、易于使用的可扩展按钮,基于 Swift |
WYMaterialButton | ★81 | 具有 Material Design 动画效果的、可交互的按钮。 |
EMEmojiableBtn | ★80 | 也是一个表情筛选器,基于 Objective-c 。 |
AnimatablePlayButton | ★75 | 一个有动效的播放/暂停按钮,基于 CALayer 和 CAKeyframeAnimation。 |
MultiToggleButton | ★70 / Y | 一个 UIButton 子类,实现了点击切换文字的按钮,支持 Swift。 |
MVMaterialView | ★67 | 用来模仿 Material Design 概念波纹(Ripple)效果 UI 控件的子类和 UIButton。 |
JSButton | ★11 | 另一个基于原生 UIControl 的完全可定制的子类,一行代码都不用写就可以创建一个漂亮的按钮。 |
SpicyButton | ★1 | 功能齐全的 IBDesignable UIButton 类 |
SDevCircleButton | / Y | Swift 实现的圆型按钮。 |
SDevBootstrapButton | / Y | Swift 版的 Twitter Bootstrap 按钮。 |
Segmented Control/分段切换按钮/节选器
相关教程
开源组件参考
地址 | Stars/Siwft | 简介 |
---|---|---|
HMSegmentedControl | ★3.7k | UISegmentedControl 的直接替代品,模仿了Google Currents 和其他各种 Google 产品中使用的分段控件的样式。 |
TwicketSegmentedControl | ★1.6k / Y | 一个自定义的 UISegmentedControl 梯度品,基于 Swift 实现的。 |
BetterSegmentedControl | ★1.4k | 一个易用的、针对 UISegmentedControl 和 UISwitch 替代品。 |
SJFluidSegmentedControl | ★844 / Y | 一个具有自定义外观和交互式动画的分段控件,基于 Swift 3.0 编写。 |
PinterestSegment | ★532 / Y | 一个具有遮罩动画的类似 Pinterest 的细分控件。 |
AKASegmentedControl | ★395 | 一个完全可定制的iOS分段控件。 |
LUNSegmentedControl | ★326 | 一个具有交互式动画的可定制分段控件。 |
DynamicMaskSegmentSwitch | ★308 | 一个具有动态文本蒙版效果分段式切换器 |
MultiSelectSegmentedControl | ★148 / Y | 向 UISegmentedControl 添加多重选择功能。 |
YUSegment | ★114 | 一个 iOS的可自定义分段控件,同时支持文本和图像。 |
Switch/开关按钮
相关教程
相关框架
地址 | Stars/Siwft | 简介 |
---|---|---|
RAMPaperSwitch | ★2.8k / Y | RAMPaperSwitch 是一个 Swift 模块,用于当打开时绘制父组件的样式。 |
DGRunkeeperSwitch | ★1.9k / Y | 有自动滑动切换效果的 Switch 开关控件,适合两段式控件,基于 Swift 2.0。 |
AIFlatSwitch | ★889 | 一个针对 UISwitch 的具有扁平化风格的替代品。 |
TKSwitcherCollection | ★817 | 一组带有动画效果的开关组建合集。 |
SevenSwitch | ★780 | 一个 UISwitch 的非侵入式替代品,基于 iOS7 的风格。 |
LLSwitch | ★580 | 一个有趣的switch. |
ViralSwitch | ★341 | 一个 UISwitch,可以通过其色调来影响上一级视图的颜色。 |
JTMaterialSwitch | ★304 | 一个可自定义的开关 UI,具有波纹效果和弹跳动画,灵感来自于 Google Material Design. |
AnimatedSwitch | ★242 / Y | 一个 UISwitch 扩展,用户将组建颜色绘制到期父组件上,基于 Swift。 |
Switcher | ★207 / Y | 一个可自定义的 UISwitcher,当状态改变时伴有动画效果,基于 Swift。 |
Switch | ★124 / Y | 一个基于 Swift 实现的开关控件,完全支持 IB(Interface Builder)。 |
PMZSwitch | ★103 | 另一个带有动画的开关。 |
TWControls.swift | ★52 / Y | 简单的开关和按钮控制器,使用闭包来执行由控件触发的操作。 |
HHFlashSwitch | 一个另类的UISwitch,选择后,背景水波扩散变色效果。 |
Calendar/日历控件
相关教程
相关开源组件
地址 | Stars/Siwft | 简介 |
---|---|---|
FSCalendar | ★8.9k / Y | 一个完全可自定义的 iOS 日历,同时兼容 Objective-C 和 Swift。 |
JTAppleCalendar | ★6.6k / Y | 一个类似 Apple Calendar 的非官方实现,基于 Swift,除了 iOS,也可用于 tvOS上。 |
CVCalendar | ★3.3k / Y | 使用 Swift(2.0)编写的自定义可视日历,支持 iOS 8+ 以上版本 。 |
CVCalendar | ★3.3k | 是一个方便开发者集成自定义日历视图到自己 iOS 应用的项目, 支持 Storyboard 和手动配置, 使用 CocoaPods 进行安装, 提供了丰富的 API 供开发者使用. |
JTCalendar | ★2.7k | 一个可自定义的 iOS 日历组件,支持 Objective-C |
MSCollectionViewCalendarLayout | ★2k | MSCollectionViewCalendarLayout是一个UICollectionViewLayout子类,用于显示按时间顺序排列的数据。 |
PDTSimpleCalendar | ★2k | 一个基于 UICollectionView 的iOS简单日历/日期选择器 |
DateTimePicker | ★1.7k / Y | 一个更好的 iOS UI 组件,可用于选择日期和时间,不是日历方式,是滚动方式。 |
CalendarKit | ★1.4k / Y | 一个完全可定制的日历组件,支持备忘功能,支持 Swift。 |
GLCalendarView | ★869 | 一个完全可自定义的日历视图组件,可以用作日期范围选择器 |
RSDayFlow | ★835 | 具有无限滚动功能的日历,支持 iOS 7+ 以上版本。 |
Koyomi | ★697 / Y | 一个简单的日历组件,基于 Swift。 |
Daysquare | ★695 | 一个优雅的日历控件。 |
Calendar | ★666 | 一组用于显示和安排事件视图/控制器,不仅仅是日期,有点像带日历的备忘录。 |
MBCalendarKit | ★558 / Y | 一致支持自定义和本地化的 iOS 日历框架, 也支持 IBDesignable, Autolayout,支持 Swift 和 Objective-C |
SRCountdownTimer | ★395 / Y | 一个圆形倒计时View |
KDCalendarView | ★386 / Y | 基于 Swift 4.0 实现的 iOS 日历组件。 包括水平和垂直样式(滚动)的布局,也可以显示原生的日历事件。 |
MSSCalendar | ★294 | A simple iOS Calendar 高性能日历控件(类似去哪网). |
ASCalendar | ★193 / Y | 使用 mvvm 模式编写的iOS日历控件,基于 Swift。 |
CalendarPopUp | ★182 | 一个简单的基于 JTAppleCalendar 的库。 |
ios_calendar | ★155 | 一个轻量级的日历控件,支持 Locale(本地化)和 CalendarIdentifier,有弹出(popover)效果,也支持波斯日历,只支持 Objective-C。 |
RCalendarPicker | ★117 | RCalendarPicker 是一个日期选择器组件,包括日历控件 ,日历选择控件,日历,日期选择,还有时钟选择控件,样式有点像挂历,除了日历意外,有个大大的当日日期UI。 |
FDCalendar | ★116 | 一个 iOS 自定义的日历控件。 |
HYYCalendar | ★93 | 一个简单易用的日期的选择的控件,支持日历选择和Picker选择两种方式。支持iOS 6+. |
NWCalendarView | ★61 | 一个 iOS 日历控件,允许选择单个日期或日期范围,还可以禁用不可用日期。 |
PTEventView | ★34 / Y | 一个基于日历的事件备忘录,支持 ARC、Autolayout,可以通过 StoryBoard 编辑。支持 Swift 3.0 以上的版本。 |
GDPersianCalendar | ★29 | 一个可自定义且易用的波斯日历组件,明显的阿拉伯风格。 |
ZFCalendar | ★11 | 类似去哪儿中的日历控件,显示农历,农历节日,公历节日,公历日期 |
ZYCalendar | 一个iOS端高度可定制化的日历视图 |
Timeline/时间线
地址 | Stars/Siwft | 简介 |
---|---|---|
TimelineTableViewCell | ★1.1k / Y | 一个基于 UITableViewCell 实现的简单时间轴组件,基于 Swift 3.0. |
DFTimelineView | ★440 | DFTimelineView仿微信朋友圈 时间轴. |
TimelineCards | ★409 / Y | 以卡片形式呈现时间线(Timeline)的组件,可以以单个/多组卡片的形式显示在 Feed 流中,支持 Swift。 |
Cards/卡片控件
- 包括基于卡片的 UI组件,以及相关平移手势,翻转、滑动等动画效果。*
地址 | Stars/Siwft | 简介 |
---|---|---|
Koloda | ★4.7k / Y | 类似 Tinder 中卡片的效果的简单实现,支持 Swift。 |
Cards | ★3.8k / Y | 类似于 iOS 11 AppStore 的卡片视图组件。 |
MDCSwipeToChoose | ★2.6k / Y | 通过左右侧滑就可以实现"喜欢"还是"不喜欢"的功能,也可以当做照片查看器组件,可以帮助你在几分钟之内实现卡牌效果的应用程序。 |
CardParts | ★2.1k / Y | 一个基于 UIKit 响应式卡片 UI 框架,卡片组件很多(比如卡片式表单,卡片式地图,卡片式按钮。。),还带有例子程序,支持Swift。 |
CardAnimation | ★1.1k / Y | 一个卡片翻动效果,通过平移手持进行操作。 |
TisprCardStack | ★770 / Y | 一个卡片 UI 库,基于 UICollectionView ,可定制、可侧滑、栈形式,支持 Swift 3 以上版本。 |
VerticalCardSwiper | ★700 / Y | 一个类似 Shazam Discover UI 和 Tinder 和两个 APP 的结合, 基于 UICollectionView,支持Swift。 |
CardsLayout | ★614 / Y | 一个精心设计的、轻量级的、可自定义的视图卡片布局,更像是一个容器,只有一个 Swift 类。 |
MMCardView | ★511 | 类似于 Wallet 效果的自定义 CollectionView,有点想 iOS 卡包的效果。 |
Shuffle | ★422 | 一个受Tinder启发的多向刷卡容器框架。 |
DMSwipeCards | ★239 | 另一个类似于 Tinder 效果的卡片栈,支持延迟加载和泛型。 |
KVCardSelectionVC | ★19 / Y | 一个很好看的拨号卡片效果(类似于老式带圆盘的拨号电话)的 ViewController,支持 Swift。 |
Form & Settings/表单及设置控件
- 包括输入验证,表单助手,表单构建器等等。*
地址 | Stars/Siwft | 简介 |
---|---|---|
Eureka | ★10.7k / Y | 一个优雅的表单构建器,纯 Swift 实现,是 XLForm 的 Swift 版本。有中文文档,和一些灵活自定义的操作符。 |
XLForm | ★5.7k / Y | XLForm 是创建动态表格式表单的一个最灵活强大的库,其目标是用1/10的时间构建相同形式的手工表格。同时兼容 Swift 和 Obj-C. |
SwiftForms | ★1.3k / Y | 一个简单、轻量的 Swift 库,用于简化表单构建操作,支持 Swift。 |
SwiftValidator | ★1.3k / Y | 基于规则的 Swift 表单验证库。 |
Former | ★1.2k / Y | Former 是一个完全可定制的 Swift2 库,旨在简化基于 UITableView 表单的构建,支持 Swift。 |
MZFormSheetPresentationController | ★976 / Y | MZFormSheetPresentationController 提供了一个原生 iOS UIModalPresentationFormSheet 的替代品,添加了对 iPhone 的支持,并且可以自定义 controller 的尺寸和表单的外观。 |
SwiftyFORM | ★855 / Y | SwiftyFORM 是一个基于 Swift 实现的表单框架。 |
ValidatedPropertyKit | ★566 / Y | 一个使用 Property Wrappers 来校验属性的简单方式。 |
formvalidator-swift | ★495 / Y | 一个用于验证文本域表单的框架, 使用方式很简便,支持 Swift。 |
YALField | ★478 | 一个带有校验功能的自定义表单组件。 |
YALField | ★478 | 使用 interface builder 更容易地创建表单 UI。包含带合法性验证的自定义字段。 |
GenericPasswordRow | ★175 / Y | 一行代码就可以实现 密码校验,基于 Eureka,支持 Swift |
Formalist | ★151 / Y | 一个 iOS 声明式表单构建框架,支持Swift |
ATGValidator | ★36 / Y | 一个基于规则的表单验证框架,用于解决验证用户输入数据时遇到的最常见问题,支持 Swift。 |
ValidationToolkit | ★29 / Y | 一个基于 Swift 实现的轻量级输入验证框架。 |
Form | ★19 / Y | 在 iOS 上构建表达的最灵活、最强大的方式,可以通过 JSON 来定义表单,支持 Swift 和 Objective-C。 |
Label/文本标签控件
相关教程
文本标签框架
地址 | Stars/Siwft | 简介 |
---|---|---|
TTTAttributedLabel | ★8.6k | 一个 UILabel 的替代品,支持属性字符串,数据检测,以及链接等。 |
LTMorphingLabel | ★7.3k / Y | 一个优美的、可以变形的 UILabel,基于 Swift 实现,动画效果也比较多。 |
ActiveLabel.swift | ★3.4k / Y | 一个 UILabel 的替代品,支持 (#), Mentions (@) and URLs (http://) 等符号,支持 Swift。 |
ZCAnimatedLabel | ★2.3k | 一个 UILabel 替代品,有细粒度的出现、消失效果,可以让文字逐个带动效显示或消失。 |
RQShineLabel | ★1.9k | 类似于 Secret 这个应用文本动画,让文本中的字随机地淡入效果,面向 Objective-C 。 |
TOMSMorphingLabel | ★1.9k | 可以在标签和文本值之间配置变形过渡效果。 |
UICountingLabel | ★1.7k | 为 UILabel 添加了计数动画效果。 |
NumberMorphView | ★1.5k / Y | 用于显示数字的标签视图,可以使用称为数字补间或数字变形的技术来过渡或设置动画效果,简单所就是数字变化时有变形动画。 |
MZTimerLabel | ★1.5k | 一个方便使用的 iOS 类,可以将 UILabel 用作倒数计时器或秒表,面向 Objective-C。 |
GlitchLabel | ★946 / Y | 一个类似于"抖音" Logo 效果的 UILabel。 |
Preloader.Ophiuchus | ★868 | 一个自定义标签,可将动画应用于整个文本或单个字母,效果还是挺酷的,面向 Objective-C。 |
CountdownLabel | ★644 / Y | 一个带有变形动画效果的简单倒计时 UILabel,以及一些有用的功能。 |
THLabel | ★626 | 一个 UILabel 子类,有一些特效,包括模糊阴影,内阴影,笔触文本,渐变填充等。 |
PPCounter | ★446 | 一款简单实用的数字加减动画,支持UILabel、UIButton显示. |
TriLabelView | ★150 / Y | 一个三角形的角标组件,基于 Swift。 |
MTLLinkLabel | ★77 / Y | 一个可以带连接的 UILabel,基于 Swift 实现。 |
IncrementableLabel | ★72 / Y | 一个可以递增计数的标签,适用于 iOS、 macOS 和 tvOS. |
STULabel | ★63 | 一个比 UILabel 更快的标签,支持异步渲染,可以和 UIDragInteraction 连接,灵活的文本阶段,自动布局,支持 UIAccessibility 等等。 |
SlidingText | ★49 / Y | 一个类似于页面滑动指示器一样的 UIView,可以侧滑,基于 Swift 。 |
NumericAnimatedLabel | ★26 / Y | 一个 Swift UIView 组件,用户现实按照一定步长递增/递减的数字,有动画效果,对于现实货币类型的数字很有用,比如股票、拍卖价格等。 |
AnimatedMaskLabel | ★14 | Animated Mask Label 是一个很好的带有渐变效果的标签, 也可以让你在任何视图中添加闪光特效。 |
JSLabel | ★5 / Y | 一个简单但精心设计过的 UILabel,支持 IBDesignable 和 Blinking 特性,基于 Swift。 |
搜索框
相关教程
相关框架
地址 | Stars/Siwft | 简介 |
---|---|---|
PYSearch | ★3.7k | 非常赞的一个搜索控件。 |
CYLSearchViewController | ★176 | 模仿iPhone短信聊天里的搜索框样式,点击搜索后,搜索框平滑移动到导航栏上. |
search | ★1 | 搜索历史标签. |
CustomSearchBar | 自定义searchbar,类似于instagram的搜索框效果。 |
Menu/菜单控件/侧滑菜单/抽屉
相关教程
相关框架
- 类似美团的下拉选项 - 类似于美团、大众点评的下拉菜单选项,code4app代码,评论代码有瑕疵.
- tabbar图标动画 - tabbar上图标的动画实现,源码推荐说明。
- UIWebView翻页返回效果 - UIWebView翻页返回效果(变通方法).
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
RESideMenu | ★7.2k | 一个iOS 7/8 样式的侧边栏参考,主要收到 Dribbble 启发,有视觉差效果,面向 Objective-C |
MMDrawerController | ★6.8k | 轻便、易用、侧抽屉式导航控制器 |
ViewDeck | ★5.4k | 一个类似于 Path 2.0 或 Facebook 中的滑动效果的实现,支持左菜单和右菜单,并通过编程和用户手势管理侧菜单的显示,很强大,可能需要根据自己的实际业务需求做出相应的改造。面向 Objective-C。 |
PageMenu | ★5.1k / Y | 一个可以放在任何滚动视图中的分页菜单。 |
SWRevealViewController | ★4.6k | 受到 FaceBook 和 Wunderlist 应用启发的 UIViewController 子类,用于显示侧滑的视图控制器。 |
SideMenu | ★4.6k / Y | 一个基于 Swift 的简单侧边菜单控件,主要受Facebook启发。支持防止左右两侧,有许多自定义和动画选项。可以在 Storyboard 中使用,而无需代码。 |
ECSlidingViewController | ★4.4k | 侧滑菜单. |
PKRevealController | ★3.9k | 安装简便,高度定制且对手势识别良好。可以当做一个标准控件用在iOS SDK中。 |
Persei | ★3.3k / Y | 针对 UITableView / UICollectionView / UIScrollView 的顶部滑动菜单(有动画),基于 Swift 实现。 |
MSDynamicsDrawerViewController | ★3.3k | 一个容器视图控制器,它利用UIKit动态来提供真实的抽屉导航范例。 |
CircleMenu | ★3.2k / Y | 一个有动画的,多选项的菜单按钮。 |
SlideMenuControllerSwift | ★3.2k / Y | 一个有幻灯片效果的侧滑菜单,基于纯 Swift 实现。 |
JASidePanels | ★3.1k | 侧滑菜单,有左右菜单,有pop功能,支持手势侧滑,本人使用中:简单. |
GuillotineMenu | ★2.8k / Y | 一个"断头台"(镰刀)式动效的菜单。 |
Side-Menu.iOS | ★2.7k | 支持自定义 UI 的、有动画的侧滑菜单 |
SideMenu | ★2.7k / Y | swift实现,一款带动画效果可定制 Slide Menu,可以学习其动画实现思路。P.S. 对于Hamburger式菜单,虽然很常用,不过,苹果并不鼓励使用,甚至有开发小组对其弊病用自家上线应用前后数据对比进行了抨击。 |
BTNavigationDropdownMenu | ★2.5k / Y | 一个基于 Swift 编写的再导航条下方的下拉菜单,用以在用户单击导航标题时显示相关项目的列表。 |
PagingMenuController | ★2.4k / Y | 有可定制的菜单的分页视图控制器,Swift 实现。 |
Parchment | ★2.2k / Y | 一个具有高度可定制菜单的分页视图控制器, 基于 UICollectionView 构建,支持自定义布局和无限数据源。 |
RNFrostedSidebar | ★2.2k | 侧边栏 Menu |
DropDown | ★1.9k / Y | 一个 Material Design 风格的 iOS 下拉菜单。 |
Context-Menu.iOS | ★1.9k | 您可以轻松地将有动画上下文菜单添加到您的应用程序中,可以布置在上下左右任意位置。 |
KYGooeyMenu | ★1.9k | 一个不错的粘稠效果菜单,有中文文档,面向 Objective-C。 |
ENSwiftSideMenu | ★1.8k / Y | 一个简单的侧滑菜单,支持 7/8+,基于 Swift。 |
DOPDropDownMenu | ★1.7k | 一款实用的下拉列表 |
iOS-Slide-Menu | ★1.6k | 能够类似Facebook和Path那样弹出左右边栏侧滑菜单,还支持手势。多种可以自定义的属性 (非常不错). |
Panels | ★1.3k / Y | 一个面板框架,可以轻松地向您的应用程序添加滑动面板。 |
IGLDropDownMenu | ★1.2k | 一个 iOS 下拉菜单,具有漂亮的动画,且易于定制。 |
YNDropDownMenu | ★1.2k / Y | 可爱的iOS下拉菜单,基于 Swift3。 |
SideMenuController | ★1.1k / Y | 一个侧滑菜单控制机,基于 Swift 实现,可以在中心面板中显示主要内容和次要内容(选项菜单,导航菜单等) |
PagingKit | ★928 / Y | PagingKit 提供了可自定义的菜单 UI,它的布局和设计比其他库更灵活。 |
DCPathButton | ★917 | Path,4.0的弹出菜单,呼出或者关闭菜单时,多个小图标会分别按照逆时针和顺时针的方向进行滚动. |
FlowingMenu | ★917 / Y | 一个交互式动效库,用来以反弹和流动效果来显示菜单,基于 Swift。 |
PopMenu | ★902 / Y | 一个弹出式菜单(有动画效果),主要受到新浪微博和网易APP的启发。 |
ContextMenu | ★889 | 一个类似于 Things 3 的上下文菜单,有点像 ActionSheet。 |
FlipBoardNavigationController | ★859 | FlipBoardNavigationController. |
FAPanels | ★822 / Y | FAPanels 有一些过度效果,基于 Swift。 |
SwipeMenuViewController | ★802 / Y | 可滑动的选项卡、菜单View、ViewController。 |
SloppySwiper | ★784 | iOS系统自带的UINavigationController要7.0才支持,但不过该手势只能从屏幕左侧边缘识别,如果要扩大到整个屏幕范围怎么办?配合一个SloppySwiper无需代码就可以轻松实现。此库支持iOS5.0以上版本(另外:Nav的title滑动不明显,本人写了2个类似的控件),SloppySwiper-demo :代码方式与storyboard方式。 |
cariocamenu | ★764 | 最快速的无点击菜单,通过滑动手势进行选择。 |
MenuItemKit | ★720 / Y | 一个带有图片和block(闭包)的UIMenuItem。 |
SwiftPages | ★649 / Y | 高可定制类似 Instagram 视图滑动切换功能类库。API 简单、易用。 |
GHSidebarNav | ★622 | 现在比较流行使用侧开(侧滑)菜单设计。试了不少控件,感觉GHSidebarNav最成熟,尤其对纯代码创建的界面兼容性最好。在Storyboard中使用GHSidebarNav侧开菜单控件. |
InteractiveSideMenu | ★617 / Y | 用 Swift 3 编写的可自定义的 iOS 交互式边菜单。 |
SSASideMenu | ★606 / Y | RESideMenu 的 一个使用 Swift 实现,带有 iOS 7/8 视觉差效果的侧滑菜单。 |
LLSlideMenu | ★594 | 一个弹性侧滑菜单,当菜单没有完全拉出时,有回弹效果,面向 Objective-C。 |
HACursor | ★593 | 帮助开发者方便集成导航指示器,用于管理视图页面. |
SPLarkController | ★587 / Y | 带有按钮和开关的 Settings(设置) 界面 |
VHBoomMenuButton | ★566 / Y | 一带有 BOOM 效果的菜单,炸出式动效,不过不仅仅是这一种动效,兼容 Objective-C 和 Swift。 |
FanMenu | ★527 / Y | 基于 Macaw 的环形的菜单(就像名字一样,有点像电风扇),支持多种布局。 |
AirBar | ★518 / Y | 一个基于 UIScrollView 的扩展菜单,基于 Swift 3 实现。 |
MKDropdownMenu | ★508 | 一个适用于 iOS 下拉菜单,具有许多可自定义的参数,可以满足任何需求。 |
KGFloatingDrawer | ★499 | 侧滑菜单,qq类似,KyleGoddard/KGFloatingDrawer:一款适合于大屏手机或平板的浮动抽屉式导航界面组件。效果很赞- 侧开菜单,qq类似(与RESideMenu类似). |
MLTransition | ★455 | iOS7+, pop ViewController with pan gesture from middle or edge of screen. |
ScreenShotBack | ★444 | 全屏返回,截图手势返回,景深效果,类似斗鱼、天天快报、腾讯新闻等APP的手势返回. |
FrostedSidebar | ★437 / Y | 汉堡包样式(主要指菜单按钮像汉堡包)的菜单,使用Swift实现,基于 iOS 8 API。 |
JSDBanTangHomeDemo | ★430 | 真正的仿半塘首页效果,半糖首页核心技术解析. |
ExpandingMenu | ★422 / Y | ExpandingMenu 是一个 iOS 菜单按钮,基于 Swift 实现,有点像 AddThis 的移动端分享按钮风格,既按钮裂变风格。 |
CircleBar | ★416 / Y | 一个有趣、易用的选项卡导航。 |
XXXRoundMenuButton | ★376 | 一个简单的环形菜单。 |
CategorySliderView | ★362 | 一个用于选择类别的滑块视图,可以添加任何 UIView 类型作为类别项目视图,且完全可定制 |
MediumMenu | ★325 / Y | 类似于 Medium 应用的菜单。 |
iOS DropDown | ★323 / Y | 基于 Swift 实现的下来菜单组件。 |
RadialMenu | ★293 / Y | RadialMenu 是一个自定义控件,提供了基于 Swift 和 POP 构建的触摸上下文菜单(如iOS 8 中的 iMessage 记录),就是那种一个按钮分裂出多个按钮菜单。 |
SwiftyMenu | ★289 / Y | 一个适用于 iOS 的简洁优雅的下拉菜单。 |
Dropdowns | ★244 / Y | 一个 Swift 实现的下来菜单。 |
DropDownMenuKit | ★238 / Y | 一个简单、模块化、高度可定制的 UIKit 菜单,可以附加到导航栏或工具栏,基于 Swift编写。 |
ZTPageController | ★196 | 模仿网易新闻和其他新闻样式做的一个菜单栏,栏中有各自的控制器。 不建议用VC做展示,具体可以参考我最近写的. |
AZDropdownMenu | ★195 | 一个实现下来菜单(带有图片)的简单方式。 |
AKSideMenu | ★189 | 一个漂亮的 iOS 侧滑菜单库,有视差效果。 |
DTPagerController | ★176 / Y | 一个高可定制的容器视图控制器,可在水平滚动条中显示 ViewController 集合。 |
VLDContextSheet | ★172 | 类似于 Pinterest iOS 应用中,上下文菜单,也是一个按钮裂变式菜单。 |
RHSideButtons | ★154 / Y | 针对 Android (Material Design) 浮动按钮的 iOS 实现,可以为你的应用添加角落带单,基于 Swift。 |
KWDrawerController | ★144 / Y | 一个易于使用抽屉视图控制器。 |
IGCMenu | ★130 | 一个带动画的网格及环形菜单,非常容易定制。 |
Swift-CircleMenu | ★123 / Y | 一个用 Swift 3编写的旋转圆盘菜单。 |
Swift-CircleMenu | ★123 / Y | Swift-CircleMenu:一款圆盘式菜单,Rotating circle menu written in Swift 3 |
XBSettingController | ★120 | 快速搭建类个人中心及应用设置界面. |
WXGSlideMenuDemo | ★94 | 个简单实现侧拉(侧滑)菜单的小demo,供初学者共同学习、练习使用. |
Swift-Slide-Menu | ★89 / Y | 受 Menu Material Design 其他的侧滑菜单,基于 Swift 实现。 |
SwiftySideMenu | ★85 / Y | SwiftySideMenu 是个轻巧易用的侧边栏菜单控制器,可以用于添加左侧/中间菜单栏,基于 POP 框架的等比例缩放功能,支持 Swift。 |
JNDropDownMenu | ★67 / Y | 一个易于使用的、类似于 tableview 的下来菜单,支持多列,基于 Swift3 实现。 |
SlideMenuView | ★52 | 炫酷侧滑菜单布局框架,[Android版本的一致实现](Android 版本的一致实现请见:https://github.com/xudafeng/SlidingMenu)。 |
UINavigationController-YRBackGesture | ★47 | 支持右滑返回手势,标题栏不动。 |
ALRadialMenu | ★45 / Y | 具有弹力动画的径向/原型菜单,基于 swift 实现。 |
JHMenuTableViewDemo | ★39 | 仿网易邮箱列表侧滑菜单. |
QQConfiguration | ★36 / Y | swift,QQ-iPhone端框架,左侧菜单栏拖动手势。 |
EEJSelectMenu | ★21 | 一个有非常酷的动画效果的单选菜单,基于响应式,能适应所有尺寸的屏幕。 |
RevealMenuController | ★19 | 一套可扩展的项目组,自定义位置和动画的库,长得有点像 iOS 的原生 ActionSheet 组件。 |
UIMenuScroll | ★14 / Y | 一个水平滑动导航菜单,基于 Swift。 |
KJMenuView | ★3 | 封装整理一些菜单控件、下拉菜单,横向滚动菜单 |
Navigation Bar/导航控件
相关教程
- 《iOS 对UINavigationBar的一次研究》
- 《iOS UINavigationBar 用法介绍》
- 《iOS-UINavigationBar这样用》
- iOS UINavigationController 介绍
开源组件
地址 | Stars/Siwft | 简介 |
---|---|---|
AMScrollingNavbar | ★5.9k / Y | 一个可以跟随 UIScrollView 滚动的 UINavigationBar,上下滑动时动态隐藏标题栏。 |
LTNavigationBar | ★4.5k | 属于 UINavigationBar ,可以动态改变外观。 |
TLYShyNavBar | ★3.8k | 不像那些 UINavigationBar 那么傲慢。这个 Bar 很谦虚!可以很容易地创建自动滚动的 navigation bar。 |
BLKFlexibleHeightBar | ★3.1k | 创建一个高度可以自动调整的 NavigationBar,类似 Facebook ,Square Cash,Safari 中的那样。 |
KMNavigationBarTransition | ★3k / Y | 一个用来统一管理导航栏转场以及当 push 或者 pop 的时候使动画效果更加顺滑的通用库,并且同时支持竖屏和横屏。你不用为这个库写一行代码,所有的改变都悄然发生,有中文文档,支持 Swift。 |
WRNavigationBar | ★2.7k | 超简单!!! 一行代码设置状态栏、导航栏按钮、标题、颜色、透明度,移动等. |
SAHistoryNavigationViewController | ★1.6k | SAHistoryNavigationViewController 实现了一个在 iOS 上的类似任务管理器的 UI,兼容 UINavigationContoller,3D |
JZNavigationExtension | ★1.5k | Navigation的扩展,强烈推荐 |
NavigationController | ★1.3k | 实现类似微信的 webView 导航效果,包括进度条,左滑返回上个网页或者直接关闭,就像 UINavigationController. |
HBDNavigationBar | ★1.2k | 一个自定义的 UINavigationBar ,可在各种状态之间进行平滑切换,样式、颜色、背景图像、背景Alpha(透明度)、隐藏、标题文本属性、色泽颜色,阴影... |
BusyNavigationBar | ★977 | 一个 UINavigationBar 扩展,用于展示"加载中"的特效。 |
HidingNavigationBar | ★914 | 可以在滚动时轻松隐藏和显示视图控制器的导航栏(和标签栏) |
RainbowNavigation | ★784 | RainbowNavigation 是由 Swfit 2.0编写,它允许你在各种情况下动画改变 UINavigationBar 的 backgroundColor 属性。 |
JTNavigationController | ★597 | 一个拥有更平滑的navigationBar切换动画的NavigationController. |
TONavigationBar | ★231 | NavigationBar 的一个简单子类,赋予让背景设置"清除"的能力,并逐渐过度,直到显示为止,很像 iOS 上 Music 这个应用的效果。 |
Tiptoes | ★221 / Y | 提供了一种自定义 Navigation Bar 的新思路,并实现了转场渐变效果,灵感来自于 Unread. |
KDInteractiveNavigationController | ★152 / Y | 一个 UINavigationController 子类,该子类可以控制 UINavigationbar 的隐藏/显示,还可以隐藏所有UINavigationController 返回标题,仅显示后退箭头。 |
SCNavigation | ★119 | 自定义 Navigation (NavigationBar相关以及NavigationController)所有元素完全自定义,通过 Pan 手势来完成类似 iOS7 的手势返回效果 。 |
LSNavigationBarTransition | ★78 | 导航栏背景色可以统一设置,每一个控制器导航栏背景色还可以自己单独设置不影响统一设置的界面,采用自定义交互动画实现淘宝,京东等软件当下最流行的导航控制器效果,比其他实现方式每一个控制器都包装一个导航控制器性能更好,使用方法更贴合系统使用方法. |
NavKit | ★35 | 可以通过简单方式来定制导航条的体验,它应该节省用来抽象导航栏,后退按钮等元素的时间。 |
LTNavigationbar | 导航栏颜色动态改变 |
PickerView/选择器
相关教程
开源组件
- ASDayPicker - 适用于iOS (iPhone)的日期选择器(时间选择器),类似于Calendar app的周视图.
- 仿LOL滚动视图 - 仿LOL滚动视图。
- 答题选择切换页 - 将scrollview和tableview封装在一起,在初始化的时候简单的将数据带上,就可以一页一页的左右来回滑动。
- FJTagCollectionView - 标签(适配宽度)。
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
ActionSheetPicker-3.0 | ★3.3k / Y | 重现下拉的 UIPickerView/ActionSheet 的功能。可以用 PickerView 轻松呈现一个 ActionSheet,允许用户从许多不可变的选项中进行选择,兼容 Objective-C 和 Swift。 |
ActionSheetPicker-3.0 | ★3.3k | Quickly reproduce the dropdown UIPickerView / ActionSheet functionality on iOS. |
TZStackView | ★1.2k / Y | OS 9 UIStackView 功能模拟实现于 iOS 7/ iOS 8 内。 |
PGDatePicker | ★939 | 日期选择器,支持年、年月、年月日、年月日时分、年月日时分秒、时分、时分秒、月日周 时分等. |
Mandoline | ★864 / Y | 一个 iOS 选择器视图,可满足您的所有对“选择”需求 |
JMRoundedCorner | ★753 / Y | UIView设置不触发离屏渲染的圆角! |
HYBImageCliped | ★636 | 可给任意继承UIView的控件添加任意多个圆角、可根据颜色生成图片且可带任意个圆角、给UIButton设置不同状态下的图片且可带任意圆角、给UIImageView设置任意图片,支持带圆角或者直接生成圆形。 |
CFCityPickerVC | ★552 | 城市选取控制器. |
CZPicker | ★523 | 一个弹出式选择器视图。 |
DatePickerDialog | ★438 / Y | 一个日期选择对话框 |
STPickerView | ★436 | 一个多功能的选择器,有城市选择,日期选择和单数组源自定的功能,方便大家的使用,低耦合,易扩展. |
PickerView | ★423 / Y | 一个针对 UIPickerView 的可定制替代品,基于 Swift. |
CountryPickerView | ★362 / Y | 一个简单、可自定义的视图,可在iOS应用中有效收集国家/地区信息 |
HSDatePickerViewController | ★319 | 带有Dropbox Mailbox感觉的时间日期选择器(时间选择器)。启动是背景被模糊化。界面也是主流的扁平化风格. |
JFCitySelector | ★312 | (仿美团)简单好用的城市选择器,三行代码搞定. |
D2PDatePicker | ★273 / Y | 一个优雅的、易于使用的 iOS Swift 日期选择器 |
HUMSlider | ★267 | HUMSlider是一款能够自动显示刻度记号的滑竿,滑动到某处,该处的刻度会自动上升,两边还能配置图像。支持代码或storyboard中实现。 |
XTPaster | ★169 | 贴纸功能出现在很多图片社交中, 就是图片上面贴图片, 对贴纸而言就是需要控制贴纸的位置,旋转,大小,如何使用。 |
CountryPicker | ★163 | 带有国旗和电话区段码的国家/地区选择器。 |
Ruler | ★160 | 尺子。 |
McPicker | ★159 / Y | 一个可定制的、闭包驱动的 UIPickerView 嵌入式解决方案,具有可旋转的动画。 |
ADDatePicker | ★140 / Y | 完全可自定义的 iOS 水平 PickerView 库,纯 Swift 编写。 |
SKCountryPicker | ★120 | 一个简单,可自定义的“国家/地区”选择器、用于选择国家或地区代码。 |
UsefulPickerView | ★112 | 可以简单快速实现点击TextField或者按钮弹出单列, 多列, 多列关联,城市选择, 日期选择的pickerView. |
HZQDatePickerView | ★112 | 自定义时间选择器(日期选择器),包括开始日期和结束日期两种类型. |
YXFilmSelectView | ★97 | 仿造时光网选择电影票的UI而开发的一个自定义View。 |
AIDatePickerController | ★92 | 随 iOS 7 自定义过渡效果一同呈现的 UIDatePicker。 |
MICountryPicker | ★92 | 一个带有搜索功能的国家/地区选择器。 |
planet | ★71 | 一个国家/地区选择器,带有国旗图表。 |
EasyUIControl | ★41 | 一个可以简化界面ui的控件框架。 |
YMCitySelect | ★2 | 重量级城市选择框架,类似美团、猫眼电影、美团外卖、百度外卖、百度糯米等团购类app城市选择界面. |
JDSelectedDemo | 仿京东筛选菜单实现。 | |
RGCategoryView | 仿了个苏宁易购的分类页面。 | |
LLPieCharts | LLPieCharts iOS 绘制饼图,教程。 |
下拉刷新组件
- 可展开/收缩的下拉菜单--SvpplyTable - 一个可展开可收缩的下拉菜单,类似Svpply app.
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
MJRefresh | ★13.2k | 一种使用下拉刷新的简单方式。 |
SVPullToRefresh | ★4.9k | 使用1行代码即可对任何 UIScrollView 进行拉动刷新和无限滚动。 |
CBStoreHouseRefreshControl | ★4k | 一个完全可定制的下拉刷新控件,灵感来源于 Storehouse iOS。 |
DGElasticPullToRefresh | ★3.5k / Y | 一个弹性下拉刷新组件,基于 Swift。 |
BreakOutToRefresh | ★2.4k / Y | 一个可以当游戏玩(乒乓球)的下拉刷新组件,基于 SpriteKit. |
ODRefreshControl | ★2.2k | 原iOS6上的橡皮糖刷新样式,很有意思。现在也很多大的 App 在用,比如虾米音乐和 QQ 客户端. |
Pull-to-Refresh.Rentals-iOS | ★2.2k | 下拉刷新时有动画 |
PullToMakeSoup | ★1.9k | 可以自定义动画的下拉刷新组件,可以轻松添加到 UIScrollView。 |
PullToBounce | ★1.9k | 一个针对 UIScrollView 有动画效果的下拉刷新组件。 |
UzysAnimatedGifPullToRefresh | ★1.4k | 只需简单的代码,即可使用 GIF 动画 将 PullToRefresh 添加到任何 scrollView |
ESPullToRefresh | ★1.4k / Y | 可定制的下拉刷新,包括漂亮的顶部动画。 |
TwitterCover | ★1.2k | Twitter iOS客户端的下拉封面模糊效果. |
Replace-iOS | ★1.1k | Replace-iOS 让人眼前一亮的下拉刷新(iOS). |
KafkaRefresh | ★976 | 一个有动画的、可定制的、灵活的下拉刷新框架,让 iOS 开发更快速简单。 |
ReplaceAnimation | ★927 / Y | 基于 UICollectionView 实现的下拉刷新动画,带有粘性的头视图(有回弹效果),有流式布局,基于 Swift 实现。 |
BOZPongRefreshControl | ★897 | 下拉刷新时显示一个乒乓球效果的游戏动画,该效果最初是由 MHacks III 创建的。 |
refresher | ★888 / Y | swift,上拉和下拉刷新. |
mntpulltoreact | ★781 | 一个手势就可以完成多种操作,可谓是下刷新的革命。 |
CRRefresh | ★759 | 一种使用下拉刷新的简单方式。 |
XHRefreshControl | ★746 | XHRefreshControl 是一款高扩展性、低耦合度的下拉刷新、上提加载更多的组件. |
RainyRefreshControl | ★687 | 一个简单的刷新控件,主要来自 concept 的启发。 |
MHYahooParallaxView | ★650 | 类似于Yahoo Weather和News Digest首屏的视差滚动. |
Animations | ★637 | 封装了一下,使用的时候只要两行代码。一些动画的飞机稿,都是一些单独分离出来的用于测试的子动画,现在统一归类一下. |
KYJellyPullToRefresh | ★565 | 实现弹性物理效果的下拉刷新,神奇的贝塞尔曲线,配合UIDynamic写的一个拟物的下拉刷新动画. |
PullToRefreshSwift | ★530 / Y | 一个 iOS 简单炫酷的下拉刷新库,基于纯 swift 实现。 |
PullToRefreshCoreText | ★316 | 针对所有的 UIScrollView 的下刷新扩展,有动画文本样式。 |
SDRefreshView | ★292 | 简单易用的上拉和下拉刷新(多版本细节适配). |
ADChromePullToRefresh | ★262 | 类似于 Chrome(iOS版)的下拉刷新控件,下拉的同时可以之后左右手势来操作更多的动作。 |
GIFRefreshControl | ★161 | GIFRefreshControl 可以将 GIF 图片最为轨道动画的下拉刷新组件。 |
TGRefreshOC | ★148 | 弹簧、橡皮筋下拉刷新控件,类似QQ下拉刷新效果,同时支持其他样式. |
ESRefreshControl | ★140 | 仿新浪微博、百度外卖、网易新闻下拉刷新样式Demo(仅供参考). |
WaterDropRefresh | ★133 | 仿Path 水滴的下拉刷新效果 还有视差滚动. |
WaveRefresh | ★122 | 下拉刷新水波纹动画. |
SURefresh | ★106 | BOSS直聘APP下拉刷新动画实现,效果展示图-> 实现思路再复杂的动画都可以拆分成许多简单的动画组合起来,这个动画大概可以分成两个主体,我把它分别录制出来给大家看看. |
SurfingRefreshControl | ★54 / Y | 类似于 CBStoreHouseRefreshControl.Customizable 的下拉刷新控件,基于纯 Swift 实现。 |
INBPullToRefresh | ★51 | 下拉刷新时图片放大 |
HTPullToRefresh | ★40 | 可以轻松向任何 UIScrollView 添加水平/垂直下拉刷新组件,也可以一次添加多个下拉刷新视图。 |
GSRefresh | ★30 / Y | 完全自定义视图和动画的下拉刷新、上拉加载库,易扩展. |
BanTangAnimation | 半糖下拉刷新的原理。简单来说是利用CGGlyph,字符图形转换成cgpath,然后绘制strokeEnd动画。把timeoffset和scrolloffset结合就行了。 | |
PullToReflesh-Swift | / Y | 一款炫酷的下拉刷新封装库(Mobile page refresh concept inspired by Google and for something like a news app)。源码分析 |
Rating Stars/评分组件
- appirate - 同样是提醒用户为APP评分
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
iRate | ★4.2k | 这个就是iRata——一个小型库——你可以把它放入项目中,把问卷调查什么的都忘记吧,iRate会在恰当的时候为你解决这个问题。 |
Cosmos | ★1.7k / Y | 一个星形的评分组件,支持 Swift |
HCSStarRatingView | ★1.3k | 一个简单的星级评分工具,基于 Objective-C。 |
UAAppReviewManager | ★823 | 还是提醒用户评分 |
FloatRatingView | ★496 / Y | 支持整颗/半颗星的评分工具,基于 Swift 实现。 |
TTGEmojiRate | ★283 / Y | 一个类似于 emoji 表情的评分组件,可以通过手势控制是笑脸还是哭脸,还是一般,比较新颖,基于 Swift 实现。 |
StarryStars | ★168 / Y | StarryStars 是一个用户显示/编辑评分的 iOS GUI 库,同时兼容 Swift 和 Objective-C。 |
SwiftyStarRatingView | ★127 / Y | SwiftyStarRatingView 是一个用 swift 3.0 编写的评分控件,可以支持自定义图片和颜色,并且可以支持在XIB、StoreBoard中使用,并支持AutoLayout。 |
iOS-RatingBar | ★104 / Y | iOS-RatingBar swift版的评分控件,跟Android的RatingBar一样有两种模式,评分模式和只读模式'支持视图编辑,自定义星星数量,评分等级,另外还能支持非整数星,0.5颗星,0.1颗星,可以开启动画效果。 |
MBRateApp | ★53 / Y | 一个比较时髦的评分组件,基于 Swift 实现。 |
RPInteraction | ★25 | 一个评论交互组件 - 有方便而美观的评论方式。 |
ReviewKit | ★17 | 改框架旨在在理想时机提示用户为你的应用进行评分。 |
ScrollView/滚动视图组件
相关教程
相关教程
地址 | Stars/Siwft | 简介 |
---|---|---|
SpreadsheetView | ★3.1k / Y | 一个完全可配置的电子表格视图, 使用此框架,您可以像使用 Excel 一样轻松创建复杂的布局,如时间表,甘特图或时间表。 |
VegaScroll | ★2.4k / Y | VegaScroll 是 UICollectionView 的轻量级动画布局,完全用Swift 4编写,与 iOS 11和 Xcode 9兼容 |
LazyScrollView | ★1.7k | iOS 高性能异构滚动视图构建方案. |
UIScrollView-InfiniteScroll | ★931 | 一个可以无限滚动 UIScrollView。 |
SegementSlide | ★758 / Y | 一个多层 UIScrollView 相互嵌套滚动解决方案,支持 Swift。 |
GKPageScrollView | ★702 | iOS类似微博、抖音、网易云等个人详情页滑动嵌套效果. |
AppStoreStyleHorizontalScrollView | ★661 | 类似于 App store 风格的水平滚动视图。 |
PullToDismiss | ★431 / Y | 可以通过拉动 scrollview 和 navigationbar 来关闭模态 viewcontroller,基于 Swift。 |
ShelfView-iOS | ★256 / Y | iOS 自定义书架,可以在书架上显示书籍 |
SlideController | ★197 / Y | SlideController 是完全用 Swift 编写的、简单灵活、的UI组件,基于泛型,他是一个 UIPageViewController 的一个不错的替代品。 |
ScrollingFollowView | ★176 | ScrollingFollowView 是一个跟随 UIScrollView 滚动的简单视图。 |
SYParallaxScrollView | ★119 | Useful for Configure Horizontal Parallax Scroll. |
CrownControl | ★80 | CrownControl 是一个很小的组件,可以在不滑动拇指的情况下滚动内容,有点像 DJ 打碟时的圆盘,主要收到了 Apple Watch Digital Crown 的启发。 |
GoAutoSlideView | ★56 | GoAutoSlideView 是针对 UIScrollView 的扩展,提供无限滚动和自动滑动的功能。 |
轮播组件
地址 | Stars/Siwft | 简介 |
---|---|---|
SDCycleScrollView | ★5.8k | 无限循环自动图片轮播器(一步设置即可使用). |
SGPagingView | ★1.3k | A powerful and easy to use segment control (美团、淘宝、京东、微博、腾讯、网易、今日头条等标题滚动视图). |
HYBLoopScrollView | ★634 | 一行代码接入轮播组件,自带图片下载、缓存相关功能,无任何第三方依赖、轻量级组件. |
KJBannerView | ★136 | 轮播图Banner - 无任何第三方依赖、轻量级组件 支持缩放、自带缓存加载 支持自定义继承、定制特定样式 支持网络GIF播放和网络图片和本地图片混合显示轮播 支持在Storyboard和Xib中创建并配置其属性 |
Slider/滑块
相关教程
相关框架
地址 | Stars/Siwft | 简介 |
---|---|---|
HGCircularSlider | ★1.9k / Y | 一个可定制、可重用的 iOS 环形滑块。 |
ASValueTrackingSlider | ★1.8k | 一个 UISlider 的子类,可以在滑块上方展示一个弹出式文本。 |
Fluid Slider | ★1.6k / Y | 一个带有弹出气泡(用于显示滑块值)的滑块。 |
TTRangeSlider | ★852 | 样式类似于 UISlider 的滑块,可以选择最小和最大范围。 |
AGCircularPicker | ★575 / Y | 一个特殊的环形滑块,有粘稠特效,可以用作倒数计时器或将比分保留在游戏界面中,切让滑块管理更简单。 |
SnappingSlider | ★570 / Y | 一个漂亮的滑块控件,纯 Swift 实现。 |
RangeSeekSlider | ★462 / Y | 一个可定制的范围选择滑块。 |
StepSlider | ★342 | 一个有阶段节点的滑块,节点步长可以预定义。 |
SectionedSlider | ★302 / Y | 一个垂直滑块,有点像电池电量。 |
RangeSlider | ★244 / Y | 一个使用 Swift 制作的简单范围滑块,可以从两端进行控制。 |
CircularSlider | ★230 / Y | 一个强大的环形滑块,基于 Swift 实现,100%支持 IBDesignable,且所有属性都是 IBInspectable 的。 |
MARKRangeSlider | ★172 | 一个可自定义可重置用的范围滑块,在两端都有拇指按钮。 |
CircleSlider | ★134 / Y | CircleSlider 是环形滑块库,颜色、环的宽度等都可以定制, 用纯Swift编写。 |
MultiSlider | ★122 / Y | 是个 UISlider 的克隆版,可以有多个拇指按钮(不只有2个)及值,还有可选间隔、可选的纸标签. |
JDSlider | ★87 / Y | 一个使用 Swift 实现的 iOS 滑块。 |
WESlider | ★87 | 一个简单轻量级的、带有节点的滑块。 |
VolumeControl | ★78 | 一个 iPhone 的自定义音量控制控件,一个精心设计的圆形滑块。 |
VerticalSlider | ★73 | VerticalSlider 是 UISlider 滑块控件的垂直版实现。 |
MTCircularSlider | ★72 | 一个功能丰富的环形滑块控件。 |
IntervalSlider | ★65 / Y | IntervalSlider 是像 ReutersTV 这样的滑块库,基于纯 Swift 实现。 |
MMSegmentSlider | ★46 | 可自定义动画 iOS 滑块 。 |
Sliders | / Y | 自定义样式的 SwiftUI 滑块 |
Status Bar/状态栏
相关教程
相关框架、组件
地址 | Stars/Siwft | 简介 |
---|---|---|
MTStatusBarOverlay | ★2k | MTStatusBarOverlay 是一个定制的 iOS 状态栏,用于覆盖系统默认的状态栏,类似 Reeder, Evernote and Google Mobile App。支持两种点击动作:1. 当用户点击状态栏时,状态栏会收缩,仅仅遮盖住状态栏右方的电池图标;2. 当用户点击状态栏时,一个有详细信息的视图会从系统状态栏中下拉出现. |
Bartinter | ★1.6k / Y | 可以根据屏幕背景样色动态改变颜色的状态栏,比如背景是深色,状态栏图表就编程白色,当背景是浅色时,状态栏图表就编程白色,基于 Swift。 |
Stepper/步进控件
相关教程
相关框架
地址 | Stars/Siwft | 简介 |
---|---|---|
GMStepper | ★809 / Y | 一个中间有滑动标签的步进器。 |
SnappingStepper | ★401 / Y | 一个 UIStepper 的优雅的替代品,基于 Swift 实现。 |
ValueStepper | ★332 | 一个可以显示值的 stepper 对象。 |
barceloneta | ★63 | 一个用简单的手势来增/减值的正确方法。 |
PFStepper | ★25 | 可能是最优雅的 stepper。 |
SMNumberWheel | ★21 / Y | 非常适合使用旋转轮拉提取数字,基于 Swift 。 |
TabBar/选项卡
相关教程
开源框架
地址 | Stars/Siwft | 简介 |
---|---|---|
animated-tab-bar | ★10.5k / Y | RAMAnimatedTabBarController 是一个 Swift 模块,可以用户向 tabbar 元素添加动画。 |
XLPagerTabStrip | ★6.3k / Y | PagerTabStrip(一个 Android 选项卡组件) 的 iOS版。 |
CYLTabBarController | ★6.1k | 很方便集成的tabBarController框架 |
FoldingTabBar.iOS | ★3.7k / Y | 折叠式选项卡,兼容 Swift 和 Objective-C。 |
SwipeView | ★2.7k | SwipeView是一个类,旨在简化iOS上水平、分页滚动视图的实现。它基于UIScrollView,但是添加了方便的功能,例如UITableView样式的数据源/委托接口,用于动态加载视图,以及高效的视图加载、卸载和回收。 |
Segmentio | ★2.1k / Y | 一个用Swift编写,可以放在顶部或底部的分段控件。 |
adaptive-tab-bar | ★2k / Y | AdaptiveController 可以向原生或自定义 UI 元素添加自定义状态的模块。 |
Tabman | ★1.8k / Y | 一个带有指示器栏控件的、功能强大的视图分页控制器。 |
ColorMatchTabs | ★1.3k / Y | 一个现实选项卡的有趣方式。 |
TabPageViewController | ★1.1k / Y | 可以将滚动的 tab view 和视图控制器分页。 |
BATabBarController | ★910 | 一个具有独特动画效果的 TabBarController。 |
GooeyTabbar | ★903 | 粘滞效果选项卡。 |
SwipeableTabBarController | ★764 | UITabBarController 让选项卡之间具有滑动交互效果。 |
TransitionableTab | ★698 / Y | 简单、易用、tab、可定制的标签栏切换效果. |
DLSlideView | ★647 | DLSlideView对常见的顶部Tab页点击、滑动分页做了封装。 它使用基于ViewController的container特性(而不是scrollview)来管理各个子页面,保留原始的系统消息,没有隐患。 同时内存模型更优于使用scrollview的方式,理论上可以支持无限分页. |
SwipeViewController | ★604 / Y | SwipeViewController 是 RKSwipeBetweenViewControllers 基于 Swift 的改良版,可以在 pages 或 ViewControllers 之间进行切换。 |
LLRiseTabBar-iOS | ★564 | 仿淘宝闲鱼的TabBar. |
TabDrawer | ★506 / Y | 可自定义的选项卡的 UI 元素,允许您在选择 TabBarItem 时运行代码块,或显示自定义的抽屉。 |
ScrollPager | ★474 | 一个类似于 Flipboard 滚动分页组件, 该控件创建一个给定标题或图像的选项卡,并可以选择连接到 UIScrollView,自动呈现视图,并在这些视图之间管理分页。 |
AxcAE_TabBar | ★443 | AxcAE_TabBar,特效TabBar,以开放为封装核心的TabBar组件,尽量将属性、API等参数全部开放给使用者,能够很方便快速使用的一个TabBar选项卡组件. |
AZTabBarController | ★238 / Y | 一个使用 Swift 3.0 编写的iOS 自定义选项卡控制器。 |
Pager | ★233 | 该库可以轻松创建滑动选项卡。 |
GGTabBar | ★157 | 另一个 UITabBar & UITabBarController (iOS Tab Bar) 的替代品,但是 是使用自动布局来安排各视图的层次。 |
MiniTabBar | ★138 | 一个针对 UITabBar 的简洁替代品。 |
WormTabStrip | ★127 / Y | 一个漂亮的视图分页组件,基于 Swift。 (灵感来自于 Android SmartTabLayout) |
ExpandedTabBar | ★126 | 针对 UITabBarController 的 “更多”项目的一个很有创意的解决方案。 |
ESTabBarController | ★120 | 一个iOS 选项卡控制器,可以将按钮高亮显示,同时可以设置自定义操作。 |
KYWheelTabController | ★119 | KYWheelTabController 是一个 UITabBarController 的子类,其显示一个环形菜单,而不是 UITabBar。 |
SmoothTab | ★85 | 一套流畅的可定制选项卡组件。 |
SSCustomTabMenu | ★69 | 一个简单、可定制的、带有选项卡的底部菜单。 |
SuperBadges | ★47 | 可以为选项卡按钮添加表情和彩色圆点。 |
SMSwipeableTabView | ★46 | 带选项卡的可滑动视图(就像 Android 中带有选项卡的 SwipeView 布局) |
BEKCurveTabbar | ★43 | 该组件与 XCode +10 兼容,并且可以通过 Interface_Builder 面板进行自定义。BEKCurveTabBar 派生了 UITabBar 类,可以和每个 iOS 设备兼容。 |
animated-tab-bar-Objective-C | ★34 | 动态 Tab-Bar |
CBMDTabbarController | / Y | It is a smooth MD tabbarController used on iOS, which implement by Swift. |
TableView/表格/列表
相关教程
相关框架、组件
- 横向展示文本内容的自定义cell - 可以横向展示文本内容的自定义cell,根据文本无限滚动.
- 微博cell自动布局 - 使用autoLayout对微博的cell进行自动布局,自适应cell的高度.
- jingDongFenLei - 简单仿写京东分类中的多级分类页面.
- FriendSearch - 两种UI的搜索,搜索的算法可以满足中英文互搜,联想搜索等,其中还包含对一组数据自动进行按字母分组等功能.
- 《iOS开发的一些奇巧淫技1》 - TableView不显示没内容的Cell怎么办.
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
SWTableViewCell | ★7.2k | 一个易用的 UITableViewCell 子类,实现了可滑动的内容视图。 |
MGSwipeTableCell | ★6.8k / Y | 是 UITableViewCell 的子类,允许显示带有各种过度效果的滑动按钮,支持 Swift 和 Objective-C。 |
SwipeCellKit | ★5.1k / Y | 一个可滑动的 UITableViewCell,基于 Swift 实现。 |
MCSwipeTableViewCell | ★3k | 一个方便的 UITableViewCell 子类,可以通过滑动内容来触发操作(类似于Mailbox应用)。 |
VVeboTableViewDemo | ★2.7k | 此项目由VVebo剥离,希望你能通过这个demo看到我是如何进行TableView流畅度优化的。 |
PSTCollectionView | ★2.5k | PSTCollectionView. |
RETableViewManager | ★2.5k | 赞 一个非常强大的使用数据驱动的 UITableView 内容管理。可以十分方便地生成各种样式、各种功能的TableView。只要开发者能想到的列表效果或者功能,都可以利用这份代码迅速编写出来。比如,之前要实现一个填写各种资料的列表,可能需要很多代码,现在只需要几行代码就可以实现. |
AMWaveTransition | ★2.4k | 在那些持有 tableviews 的 viewcontrollers 之间自定义过度效果。 |
RDVTabBarController | ★2.3k | 一个TabBar组件,可以方便设置底部菜单的文字图片,点击效果,小红点提示等. |
SwipeTableView | ★2.2k | Both scroll horizontal and vertical for segment scrollview which have a same header. — 类似半糖、美丽说主页与QQ音乐歌曲列表布局效果,实现不同菜单的左右滑动切换,同时支持类似tableview的顶部工具栏悬停(既可以左右滑动,又可以上下滑动)。兼容下拉刷新,自定义 collectionview实现自适应 contentSize 还可实现瀑布流功能. |
preview-transition | ★2k / Y | PreviewTransition 是一个简单的相册预览控件。 |
UUChatTableView | ★1.9k | UUChatTableView 气泡聊天界面,支持文本、图片以及音频的气泡聊天界面。源码推荐说明. |
VTMagic | ★1.8k | VTMagic 一个页面容器库。 |
RKSwipeBetweenViewControllers | ★1.7k | 页面滑动和标签选项卡类库. |
JXPagingView | ★1.5k | 类似微博主页、简书主页等效果。多页面嵌套,既可以上下滑动,也可以左右滑动切换页面。支持HeaderView悬浮、支持下拉刷新、上拉加载更多. |
ReverseExtension | ★1.5k / Y | 一个 UITableView 扩展,允许在 table view 的底部插入新单元。 |
PSCollectionView | ★1.4k | 一个瀑布流组件。 |
Bohr | ★1.3k | Bohr 允许您在应用中建立一个 Settings 设置页面,针对他的特性牢记以下三个原则:轻松,自定义和可扩展性。 |
LYEmptyView | ★1.3k | iOS一行代码集成空白页面占位图(无数据、无网络占位图). |
TYPagerController | ★1.3k | 简单,支持定制,页面控制器,可以滚动内容和标题栏,包含多种style. |
Static | ★1.2k / Y | 一个简单静态表格视图,基于 Swift。 |
WXTabBarController | ★1.1k | 在系统 UITabBarController 的基础上完美实现了安卓版微信 TabBar 的滑动切换功能,单手操作 iPhone 6 Plus 切换 TabBar 一直是一件很痛苦的事情,而滑动切换是一种不错的解决方案,支持屏幕旋转. |
ZYThumbnailTableView | ★949 / Y | 一个具有缩略图单元格的 TableView,您可以使用手势展开其他 ExpansionView,全部可以 DIY。高度自由定制可扩展TableView, 其中tableViewCell,topExpansionView,bottomExpansionView均提供接口自由定制,功能堪比小型阅读app |
UIScrollSlidingPages | ★930 | 允许添加多视图控件,并且可以横向滚动。有点类似于Groupon app. |
CascadingTableDelegate | ★929 / Y | 一种基于 Swift 来编写 UITableViewDelegate 和 UITableViewDelegate 的简便办法。 |
CYLTableViewPlaceHolder | ★917 | 一行代码完成“空TableView占位视图”管理. |
MTMaterialDelete | ★822 | 非常有趣的Material Design动画,动画删除表里面的单元格. |
DLSlideView | ★647 | DLSlideView对常见的顶部Tab页点击、滑动分页做了封装。它使用基于ViewController的container特性(而不是scrollview)来管理各个子页面,以支持无限分页,源码推荐说明. |
TableViewAnimationKit | ★642 | TableView Animation ,move your tableView. |
TMQuiltView | ★583 | 瀑布流. |
HVScrollView | ★574 | 这不是框架,只是3个示例程序,给大家提供一个实现这种布局的思路. |
TableFlip | ★515 | 一个简单的方法来做炫酷的 UITableView 动画! |
TableKit | ★501 / Y | 类型安全的、声明式表格视图,基于 Swift。 |
QuickRearrangeTableView | ★489 | 基于 UITableView 的快速重排功能扩展子类。通过长按选定单元格然后滚动移动到指定位置. |
MYTableViewIndex | ★480 / Y | 是对 UITableView 索引组件的完美替代,基于 Swift 实现,可以自定义索引组件的样式。 |
TableViewDragger | ★459 | 一个可以拖放和重新排序的 UITableView 单元控件。 |
XLPlainFlowLayout | ★448 | 可以让UICollectionView的header也支持悬停效果,类似于tableView的Plain风格. |
uicollectionview-reordering | ★446 | UICollectionViews的拖拽(拖动、移动)效果,实例教程. |
DTTableViewManager | ★413 / Y | 一个面向协议的 UITableView 管理工具,基于泛型的强大能力。 这是 DTCollectionViewManager 的姊妹项目 —— 一个管理 UICollectionView 工具,该库基于与其相同的原则构建。 |
RHPreviewCell | ★388 | 非常像 Spotify iOS app 中的播放列表预览组件,通过该库您可以让用户快速预览 UITableViewCell 下隐藏了哪些内容。 |
YX_UITableView_IN_UITableView | ★369 | UITableview嵌套UITableView案例实践(仿淘宝商品详情页实现),项目讲解. |
PagerTab | ★344 | UIScrollView实现滑动转换页面,类似网易云音乐iOS版的页面滑动切换效果. |
EHHorizontalSelectionView | ★344 | Horizontal table view style controller. |
QuickTableViewController | ★334 / Y | 一个创建 UITableView 的简单办法,基于 Swift。 |
JXPageListView | ★333 | 高仿闲鱼、转转、京东、中央天气预报等主流APP列表底部分页滚动视图. |
ExpandingStackCells | ★317 | 采用 UIStackView 实现表格单元格扩展内容显示示例及解决方案. |
SwiftReorder | ★302 / Y | 仅需几行代码,即可将重新排序的结果拖放到任何表视图中,其坚固,轻巧且完全可定制。 |
SAInboxViewController | ★299 | 一个 UIViewController 子类,灵感来自于"Google 的 Inbox" 有动画效果,点击单元格可以预览/展示更多内容。 |
ConfigurableTableViewController | ★268 | 一个简单视图控制器,提供了一种在保持类型安全的同时 用多种类型的单元格配置表视图的方法。 |
XRWaterfallLayout | ★239 | 超简单的瀑布流实现,实现说明. |
YZHeaderScaleImage | ★183 | 一行代码快速集成tableView中头部缩放视图. |
HoverConversion | ★168 | HoverConversion 使用 UITableView 实现了垂直分页功能。 当到达 UITableView contentOffset 对应的顶部或底部时,UIViewController 将进行分页。 |
VBPiledView | ★163 | 一个简单美观的堆叠式 UIView,可以替代UITableView,UIImageView,或用作菜单。 |
MBXPageViewController | ★157 | 简洁快速的页面切换--MBXPageViewController,带有按钮控件的UIPageController,非常整洁、简单以及快速。该项目通过三种形式展示页面之间的切换,比如导航栏上的多个tab切换、页面左右两端箭头指示切换,以及使用分段控件. |
TORoundedTableView | ★137 | UITableView 的一个子类,很像 ipad 中的"设置"界面,分为左右两栏的那种。 |
MDIHorizontalSectionTableViewController | ★127 | 根据产品需求开源了一个交互项目,可以理解为横向Section的TableView,section和cell同时支持拖拽,后续安卓版本也会开源出来. |
XWCatergoryView | ★122 | 一个轻量级的顶部分类视图控件,只需要通过简单的设置,你就可以快速集成该控件, 控件目前暂时有底部横条移动,椭圆背景移动,文字缩放,文字颜色变化,和文字颜色渐变五种效果,五种效果可以叠加使用也可以单一使用。实现教程 |
ExpandTableView | ★122 | 可折叠展开的tableView,QQ好友分组列表. |
SWTableViewCell | ★119 | 国内开源作者,带很多手势的表单元格. |
LLNoDataView | ★111 | 超简单的空数据提示通用View支持UIScrollView、UITableView、UICollectionView、UIWebView. |
WaterfallFlowDemo | ★95 | 一个简单的UICollectionView瀑布流布局演示demo. |
HorizontalScrollCell | ★94 | HorizontalScrollCell是一款使用方便的水平方向可滚动的单元格,适用于UICollectionView中实现水片方向滚动视图. |
VOVCManager | ★87 | 页面管理器:1.跳转指定页面,只需要知道viewController的Class名,如果有storyboard,则需要指定storyboard名;2.无需添加基类;3.支持URLScheme跳转指定页面。 |
YHListKit | ★85 | 一个轻量级的数据驱动列表框架. |
ZWSlideViewController | ★85 | ZWSlideViewController多页滑动视图控制器(类似新闻类门户APP),可以用最简单的继承方法使用,也可以不用继承,只用菜单或主视图页面,可实现丰富的定制,可以使用在多种不同形态的APP下,还可以将其做为多页或多图的滑动介绍. |
OKTableViewLiaison | ★83 / Y | 一个帮助您更好地管理 UITableView 配置的框架。 |
SelectionList | ★78 / Y | 基于 UITableView 的单选/多选清单(checklist)组件。 |
AZTableViewController | ★72 / Y | 优雅而轻松的方式将分页与虚拟视图整合在一起,支持自动分页。 |
YXTPageView | ★68 | 一个支持在 UIView 和 UITableView 之间进行滚动切换的 PageView。 |
BWSwipeRevealCell | ★62 / Y | 一个用户滑动表格单元的 Swift 库。 |
LLRiseTabBar-iOS | ★57 | 直接使用系统的特性实现的tabbar,比较简单. |
LGSettingView | ★48 | LGSettingView仅需三句代码即可快速集成设置界面,免去每次开发新应用都要重新布置设置界面的烦恼. |
ios-dragable-table-cells | ★44 | 支持在视图控制器的导航层次结构中拖放 UITableViewCell, 您通过点击并按住它们来拖动单元格。 |
SYJiugonggeTableView | ★32 | tableView封装的九宫格. |
Lightning-Table | ★28 | 一套针对 UITableView 的生命式 API。 |
StaticTableViewController | ★24 | 可以对一个静态的 UITableViewController 单元进行动态的 隐藏/显示。 |
KYCellAnimation | ★23 | 给UITableViewCell增加进入的动画. |
ThunderTable | ★15 | 使用基于协议的方式对 UITableViewController 进行管理的一种简单的声明性方法。 |
VOMetroLayoutDemo | ★12 | Metro风格的UICollectionView, 目前只支持横向布局,仅在iPad上应用. |
FlexibleTableViewController | ★9 | 一个通过用的表格视图控制器,可以处理额外的数据。 |
TreeTableView | ★2 | ZYTreeTableView:TreeView 模仿好友列表的实现方式. |
ExpandableCell/折叠效果
地址 | Stars/Siwft | 简介 |
---|---|---|
folding-cell | ★9.7k / Y | 一个折叠卡片的动画效果,用户扩展单元内容。 |
expanding-collection | ★5.3k | 一个 material design UI 的动画卡片peek/pop 控制器。 |
ExpandableCell | ★499 / Y | 完全重构的 YNExapnadableCell、更加简洁,无bug。 是一个适超棒的、可扩展可折叠表格单元。 |
YNExpandableCell | ★443 / Y | 一个适用于 iOS 的可折叠、可扩展的 tableview cell |
ExpyTableView | ★309 / Y | 只需要一个方法就可以让你的 table view 产生折叠效果。 |
CollapsibleTableSectionViewController | ★228 / Y | 一个 Swift 库,让 table view 支持可折叠效果。 |
AEAccordion | ★206 | UITableViewController 具有手风琴效果(展开/折叠)。 |
ThreeLevelAccordian | ★44 | 这是可自定义的三级手风琴效果,具有添加图像和附件的选项。 |
FTFoldingPaper | ★29 | 模拟纸张折叠效果,可以与 UITableView 集成或与其他 UI 组件一起使用。 |
Savory | ★4 / Y | 基于 Swift 实现的手风琴效果。 |
CollapsableTable | 可以自定义 section header 的可折叠 tableview section。 |
CollectionView/集合视图
UICollectionView 和 UICollectionViewController 类是iOS6 新引进的API,用于展示集合视图,布局更加灵活,可实现多列布局
相关教程
- 《iOS UICollectionView详解》
- 《iOS开发- UICollectionView详解+实例》
- 《IOS之UICollectionViewController》
- 《iOS开发之窥探UICollectionViewController》
相关框架。
地址 | Stars/Siwft | 简介 |
---|---|---|
IGListKit | ★11.2k | 一个数据驱动的 UICollectionView 框架,可以方便快速地构建灵活的列表。 |
SwipeCellKit | ★5.1k / Y | 很赞的tableView左滑删除效果 |
CSStickyHeaderFlowLayout | ★5.1k | CollectionView实现悬停的header. |
ESTabBarController.swift | ★4.2k / Y | 自定义TabBarController组件,继承自UITabBarControlle,可添加动画和自定义样式。swift 高度自定义TabBarController,支持自定义TabBarItem样式或添加动画 |
CollectionKit | ★3.8k / Y | 一个现代的Swift框架,用于构建可重用的数据驱动的集合组件。 |
Reusable | ★2.4k / Y | UITableViewCells 和 UICollectionViewCells 的混合,基于 Swift。UITableView 必备。更加优雅的实现 Cell 的 Register 和 Reuse |
Chats | ★2.1k / Y | 聊天 UI 示例程序。此项目应该只为演示或学习之用,没有服务器 -- swift。 |
DisplaySwitcher | ★2k / Y | 两个集合视图布局之间的自定义切换效果。 |
Dwifft | ★1.8k / Y | Swift Diff,Dwifft 是一个小的Swift库,它告诉您两个集合之间的“差异”是什么。即,将一个集合转换为另一个集合时所需的那些“编辑操作”。 |
CollectionViewClassifyMenu | ★1.5k | CollectionView做的两级菜单,可以折叠第二级菜单. |
RACollectionViewReorderableTripletLayout | ★1.5k | 自定义的CollectionView布局,可以通过拖动进行cell的重新排序. |
Carbon | ★901 / Y | 一个声明式的库,用于在 UITableView 和 UICollectionView 中构建基于组件的 UI。 |
RAReorderableLayout | ★863 | 可以拖拽放置的 UICollectionView 元素。 |
Parade | ★735 / Y | 一个可可滚动的视差效果引擎,可用于 iOS 和 tvOS 之上. |
GLTableCollectionView | ★700 / Y | 类似 Netflix 和 App Store 的 UITableView(带有 UICollectionView) |
Preheat | ★632 | 可以自动预取 UITableView 和 UICollectionView 中的内容。 |
SwiftSpreadSheet | ★558 / Y | 一个 Swift 实现的电子表格,完全可自定义。 |
DataSources | ★531 / Y | 一个类型安全的数据驱动 List-UI 框架。 (也可以用 ASCollectionNode ) |
DiffableDataSources | ★446 / Y | 一个反向移植 UITableView/UICollectionViewDiffableDataSource 的库。 |
KDDragAndDropCollectionView | ★420 / Y | 可以跨多个 UICollectionViews 拖放数据。 |
COBezierTableView | ★409 / Y | swift,通过编辑 Bezier 曲线四点位置设置 TableView 内 Cell 及对应按扭位置。实验效果很赞。 |
TLIndexPathTools | ★344 / Y | TLIndexPathTools 是一组可以大大简化表和集合视图操作的类集合。 |
PagingView | ★307 / Y | 无限分页,智能自动布局,有类似于 UIKit 的界面。 |
StickyCollectionView-Swift | ★304 / Y | 用于显示重叠单元格的 UICollectionView 布局。 |
MEVFloatingButton | ★297 | UITableView、UICollectionView和UIScrollView 超类类别中的下拉菜单,用于在其上显示可自定义的浮动按钮。 |
DraggingSort | ★278 | 长按拖拽排序. |
ReorderableGridView-Swift | ★277 / Y | 拖拽排序卡片。 |
WHC_CollectionViewFramework.swift | ★256 / Y | 高仿支付宝可拖拽排序编辑动画效果cell的CollectionView集合视图。 |
Sapporo | ★249 / Y | 模型驱动的 collectionview 管理工具,可以方便的对选项和单元格进行增删改查。 |
ASCollectionView | ★232 / Y | 一个类似于 Airbnb 的 collection view,基于 Swift。 |
LxTabBarController | ★231 / Y | 改变了原生tabbar切换tab时的生硬效果,并加入滑动切换手势(有和界面上的其它手势发生冲突的风险,可根据具体项目予以关闭),swift版本。 |
MSPeekCollectionViewDelegateImplementation | ★184 | 可以在集合视图中查看上一项和下一项的自定义分页行为。 |
SectionScrubber | ★182 / Y | 一个可以在集合视图之间快速滚动的组件。 |
Conv | ★139 | Conv 比 UIKit 更能表示 UICollectionView 数据结构。 |
AppStore-Horizontal-Demo | ★135 | 仿半糖App 个人中心可以横向滚动的 列表 UICollectionView UITableView UISrcrollView. |
GenericDataSource | ★126 / Y | Swift 中用 UITableView/UICollectionView 的数据源实现的通用小型可重用组件。 |
CampcotCollectionView | ★95 / Y | CampcotCollectionView 是用Swift编写的一个可自定义 UICollectionView,它允部分单元许展开和折叠, 且提供了一个简单的API来管理集合视图的外观。 |
PJFDataSource | ★89 | PJFDataSource 是一个小型库,可为您的应用提供一种简洁的架构来管理数据源,同时为常见的内容状态(即加载,加载,空和错误)提供一致的用户界面。 |
SimpleSource | ★86 | 简单且类型安全的iOS表和集合视图。 |
EditDistance | ★85 / Y | UITableView 和 UICollectionView 的增量更新工具 |
AZCollectionViewController | ★82 / Y | 一个将分页与 CollectionView中的虚拟视图集成的简单方法。 |
Stefan | ★45 | 一个可以帮助您轻松管理集合和占位符的工具。 |
HBHorizontalTableView | ★37 / Y | swift,TableView 横向滚动小示例(仿照 AppStore 应用展示)。 |
NavTopImage.swift | ★21 / Y | NavigationController动态缩放titleView。 |
FlexibleCollectionViewController | ★3 / Y | 一个具有外部数据处理功能的通用集合视图控制器,基于 Swift。 |
ThunderCollection | ★1 | 使用基于协议的方式对 UICollectionViewController 进行管理的一种简单的声明性方法。 |
Collection View Layout/Collection View 布局
地址 | Stars/Siwft | 简介 |
---|---|---|
CHTCollectionViewWaterfallLayout | ★4.1k | 一个针对 UICollectionView 瀑布流效果的布局,(类似于 Pinterest) 。 |
BouncyLayout | ★3.7k / Y | BouncyLayout 是一个让单元格有反弹效果的布局。 |
CollectionViewSlantedLayout | ★1.7k / Y | UICollectionViewLayout 让单元格具有倾斜效果,支持 Swift。 |
CenteredCollectionView | ★798 / Y | CenteredCollectionView 可以让单元居中,从而产生“轮播效果”。 |
Blueprints | ★739 / Y | 该框架旨在简化 collection view 的流式布局,支持 Objective-C 和 Swift. |
FMMosaicLayout | ★592 | 马赛克瓷砖效果的 collection view 布局,单元格可以有不一样的大小,重点在于简单的定制能力。 |
TLLayoutTransitioning | ★351 / Y | 增强了 UICollectionView 之间的过度效果。 |
mosaic-layout | ★238 / Y | 另一个马赛克效果的 collection view 布局(单元格可以有大有小),主要受到 Lightbox 的启发,基于 Swift 实现。 |
SquareMosaicLayout | ★232 / Y | 一个可扩展的马赛克风格的 UICollectionViewLayout,着眼于极其灵活的自定义能力,支持Swift。 |
UICollectionViewSplitLayout | ★209 / Y | UICollectionViewSplitLayout 让 collection view 编程响应式的。 |
AZSafariCollectionViewLayout | ★203 | AZSafariCollectionViewLayout 是 Safari 浏览器历史记录页面布局的实现,非常易于使用、易于集成(IBInspectable),只需几分钟就可以集成进来。 |
Swinflate | ★198 / Y | 可以让 CollectionView 有流畅的轮播体验,支持 Swift。 |
Header/头部标题栏
地址 | Stars/Siwft | 简介 |
---|---|---|
CSStickyHeaderFlowLayout | ★5.1k | 用 UICollectionView 替换了 UITableView。 类似于 Parallax Header,Sticky Section Header 一样的效果,也有滑动视差效果。 |
GSKStretchyHeaderView | ★1.5k | 可配置且易用的 UITableView/UICollectionView 伸缩 header 视图。 |
ParallaxTableViewHeader | ★1.4k | 当 tableView 滚动时,在 UITableView 的 header 部分产生视差滚动效果。 |
Placeholder/占位符
地址 | Stars/Siwft | 简介 |
---|---|---|
DZNEmptyDataSet | ★11.8k | 下拉式 UITableView/UICollectionView,用于在视图无内容可显示时显示空数据集。DZNEmptyDataSet UITableView/UICollectionView 超类,当视图没有内容的时候用来展示空数据集。DXNEmptyDataSet 能自动工作,只需要确认 DZNEmptyDataSetSource 和用户需要返回的数据。 |
HGPlaceholders | ★1.9k / Y | 可以为项目中的任何 UITableView/UICollectionView 显示和创建占位符及空状态。 |
MMPlaceHolder | ★1k | 非常不错的一个库,显示控件的 PlaceHolder 或者是 UIView 的大小 |
ListPlaceholder | ★465 / Y | Listplacholder 是一个 Swift 库,允许您轻松地将facebook 风格的动画 loading 占位符添加到您的 tableviews 或 collection views 中。 |
WLEmptyState | ★249 / Y | 当 UITableView 的数据集为空时,用于自定义视图的组件。 |
Tag/标签
地址 | Stars/Siwft | 简介 |
---|---|---|
TagListView | ★2.1k / Y | 简单和高度可定制的 iOS 标签列表视图,基于 Swift。 |
SFFocusViewLayout | ★1.7k / Y | SFFocusViewLayout 是UICollectionViewLayout 子类,用于在 UICollectionView 上显示焦点内容,UICollectionView 是所有单元格中那个最大的单元格。 |
TTGTagCollectionView | ★1.3k | 在垂直滚动视图中显示简单文本标签或自定义标签。 |
YNSearch | ★1.1k / Y | 一个高可定制的 search view(搜索视图,通过输入搜索词,可以让页面中的标签高亮显示) 类似于 Pinterest 中的效果,基于 Swift 3。 |
WSTagsField | ★914 / Y | 可以呈现多个不同标签的表单文本域组件。 |
AMTagListView | ★750 | 一个 UIScrollView 子类,允许添加高度可自定义标记的列表。 |
RKTagsView | ★443 | 高度可定制的 iOS 标签视图( 如NSTokenField ),支持编辑,多选、以及自动布局等特性。 |
PARTagPicker | ★360 | 该库提供了一个视图控制器,用于选择和创建 类似于 wordpress 或 tumblr 样式的标签。 |
AKMaskField | ★327 | AKMaskField 是 UITextField 的子类,可以输入固定数量和特定格式的数据。 |
TagCellLayout | ★238 / Y | 左、中、右标签对齐方式的 UICollectionView 布局。 |
AJMyTags | ★227 | 热门标签组件,用于表现修改个人标签,使用UICollectionView实现,动态背景框使用 UICollectionViewFlowLayout 的 DecorationView 实现。 |
TextField & TextView/文本域/文本处理
相关教程
相关框架
文本输入
地址 | Stars/Siwft | 简介 |
---|---|---|
JVFloatLabeledTextField | ★7k | 一个带有浮动标签的 UITextField 子类。 |
TextFieldEffects | ★5.4k / Y | 受 Codrops 启发的自定义UITextFields效果,基于 Swift 构建的,文本框在输入时有个横向弹出的效果,动效不错。 |
PYSearch | ★3.7k | 一个优雅的搜索控制器,取代了iOS(iPhone和iPad)的 UISearchController。 |
SkyFloatingLabelTextField | ★3.6k / Y | 一个漂亮灵活的文本域控件,带有浮动标签功能,基于 Swift 实现。 |
Reel Search | ★2.5k / Y | RAMReel 允许您从列表中选择选项。 |
StatefulViewController | ★2.1k / Y | 基于内容、加载中、错误或空等状态的占位符视图。 |
GrowingTextView | ★2.1k | 一个非常棒的UITextView库. |
NextGrowingTextView | ★1.3k / Y | 针对 iOS 7及更高版本进行了优化的“自动伸缩文本视图”。 |
MLPAutoCompleteTextField | ★1.2k | UITextField 的一个子类,类似于典型的 UITextField,但有一个显着的例外:它管理一个自动补全的建议词下拉表,该表会随着输入更新而更新。 |
RPFloatingPlaceholders | ★1.1k | 一个 UITextField 和 UITextView 的带有占位符的子类,在用文本填充字段时会变为浮动标签。 |
SearchTextField | ★928 | UITextField 的一个子类,实现了自动补建议词列表功能。 |
VENTokenField | ★783 | Venmo 应用程序中使用的那个易用的令牌(token)字段。 |
UITextField-Shake | ★742 / Y | 可以为 UITextField 添加震动效果,可以用户用户输入错误时的提醒。 Swift 版本的 |
RSKGrowingTextView | ★709 | 一个轻量级的 UITextView 子类会,自动增长和收缩(就是说可以自动换行)。 |
AnimatedTextInput | ★707 | UITextField 和 UITextView 的替代品,有动画效果。 |
M80AttributedLabel | ★703 | 富文本demo |
InputBarAccessoryView | ★696 / Y | 一个简单易定制的 InputAccessoryView,用于制作带有自动完成和附件的输入栏。 |
AutocompleteField | ★649 | 支持单词自动补全的 UITextField。 |
KMPlaceholderTextView | ★645 / Y | 一个支持多占位符的 UITextView 子类,支持 Swift。 |
SelectableTextView | ★619 | 一个支持选择(点击)和扩展的文本视图。 |
GrowingTextView | ★603 / Y | 基于 Swift3 和 Swift2.3 实现的UITextView,支持自动伸缩、占位符和长度限制。 |
InstantSearch iOS | ★479 / Y | 一个在 iOS 上构建即时搜索应用程序的小部件和帮助程序库。 |
UITextField-Navigation | ★425 / Y | UITextField-Navigation 可以在键盘上添加上一个、下一个按钮。 |
TextFieldCounter | ★400 / Y | UITextField 字符计数器支持可爱的 UX. |
VMaskTextField | ★384 | VMaskTextField是一个库,可为 iOS 创建输入掩码(不显示原文)。 |
TweeTextField | ★372 | 一个轻量级的文本字段集,具有出色的动画和功能。 |
HTYTextField | ★298 / Y | 具有弹性占位符的 UITextField,文本占位符有个弹出式动画。 |
IQDropDownTextField | ★277 | 基于 UIPickerView 的带有下拉选项的 TextField。 |
ARAutocompleteTextView | ★264 | 一个 UITextView 子类,可自动实时显示文本建议词,完美支持 e-mail 格式 |
ALTextInputBar | ★260 | 可以可以自动伸长的文本输入,适合于消息类型APP的输入。 |
PasswordTextField | ★255 / Y | 一个具有可切换图标的自定义 TextField,可显示或隐藏密码,并有良好的密码策略。 |
Stryng | ★247 / Y | Swift strings taken to a whole new syntax level. |
styled-text | ★232 | StyledText 可简化动态文本的样式。 您不必在每次需要更新文本时都使用属性字符串,而可以在标签上声明性地设置文本样式,当标签文本更新时,标签将自动应用预设样式。 |
AwesomeTextField | ★215 / Y | 一个很棒的 TextField,高度可定制且易于使用, 非常适合作为注册或登录表单。 |
DDRichText | ★206 | 为图文混排提供了一个思路 |
PowerMode | ★165 / Y | 一个很酷的文本输入框. |
CSGrowingTextView | ★165 | 文本框会随着输入字数改变高度 |
RSKPlaceholderTextView | ★157 | 一个 UITextView 的轻量级子类,对占位符做了增强。 |
ModernSearchBar | ★151 | 带有自动补全功能的搜索栏。 |
CBPinEntryView | ★147 / Y | CBPinEntryView 是用Swift编写的视图组件,允许轻松,流畅地输入密码,代码或 pin 码。 |
DTTextField | ★139 / Y | DTTextField 是具有浮动占位符和错误标签的自定义文本字段,支持 Swift3.0 。 |
CMInputView | ★139 | UITextView输入时高度自适应. |
CocoaTextField | ★129 | 根据 Material.IO 2019 大会指南所创建的 UITextField。 |
MBAutoGrowingTextView | ★128 | 基于 UITextView 可自动布局的子类,可以随用户输入而自动增长(就是可以自动换行,支持回车),并且可以设置最大和最小高度,所有这些都无需一行代码。 |
GBigbang | ★113 | 一个分词功能组件/大爆炸/tagFlowView. |
RSFloatInputView | ★100 / Y | 带有平滑动画,且支持图标和分隔符的输入,基于 Swift. |
WCLPassWordView | ★94 | 实现类似微信和支付宝的密码输入框. |
PLCurrencyTextField | ★92 | 一个支持货币格式的 UITextField。 |
BMLine | ★80 | 便捷的为你的view 添加线条。 |
MVAutocompletePlaceSearchTextField | ★68 | 一个可以自动补全的控件,类似于地图应用中的地点选择。 |
Tagging | ★63 / Y | TextView 为 Mention 或 Hashtag(#开头的文本,微博中的话题)提供易于使用的标记功能。 |
AutoCompleteTextField | ★56 | 再有自动补全建议词的文本域控件。 |
TJTextField | ★43 | 一个带下划线和左侧图像的 UITextField。 |
CurrencyTextField | ★40 | 可以自动格式化货币数字 |
NxEnabled | ★32 | 当按钮的可用状态取决于某些元素(例如TextView,TextField)时,这是一个相当常见的情况,该库提供了仅需几行代码即可实现此目的的最简单方法,改库为按钮添加了 enabled 属性。 |
TaniwhaTextField | ★26 / Y | TaniwhaTextField 是一个轻巧美观的 Swift 文本框框架,它具有浮动标签图案,您也可以自定义高度。 |
MeasurementTextField | ★15 | 基于 UITextField 的控件,支持 长度、质量、速度之类的输入。 |
RTLabel | 展示HTML的label |
富文本
- 高仿微信限定行数文字内容 - 采用Autolayout高仿微信纯文字限定行数.
- placeholder_TextView - 带有placeholder的TextView:带有提示信息的textview,使用懒加载的思想,支持扩展、自定义,类似许多APP内部的意见反馈页面.
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
cleartext-mac.swift | ★3.3k / Y | 提供一千个常用单词的编辑器。 |
TYAttributedLabel | ★2.8k | TYAttributedLabel。 简单易用的属性文本控件(无需了解CoreText),支持富文本,图文混排显示,支持添加链接,image和UIView控件,支持自定义排版显示. |
TFHpple | ★2.7k | TFHpple解析html的轻量级框架. |
RTLabel | ★1.5k | RTLabel 基于UILabel类的拓展,能够支持Html标记的富文本显示,它是基于Core Text,因此也支持Core Text上的一些东西。32位,很久没有更新了. |
FloatLabelFields.swift | ★1.2k / Y | FloatLabelFields.swift浮动标签输入效果类。 |
WordPress-Editor-iOS | ★1k | 一个文本编辑器 简书和新浪博客都在用. |
ParkedTextField | ★854 | 带固定文本的输入组件. |
FXLabel | ★826 | FXLabel是一个功能强大使用简单的类库,通过提供一个子类改进了标准的UILabel组件,为字体增加了阴影、内阴影和渐变色等,可以被用在任何标准的UILabel中。FXLabel还提供了更多控件,可以对字体行距、字体间距等进行调整. |
MLEmojiLabel | ★813 | 自动识别网址、号码、邮箱、@、#话题#和表情的label。可以自定义自己的表情识别正则,和对应的表情图像。(默认是识别微信的表情符号),继承自TTTAttributedLabel,所以可以像label一样使用。label的特性全都有,使用起来更友好更方便. |
M80AttributedLabel | ★703 | M80AttributedLabel实现文字与表情的混排。一般使用气泡作为背景.功能较齐全的attributed lable,支持attributed string和图片、链接、控件的混排. |
MessageThrottle | ★624 | A lightweight Objective-C message throttle and debounce library. |
AttributedLabel | ★511 | 显示性能数量级 UILabel 的 AttributedLabel。无畏无惧、挑战权威. |
SJAttributesFactory | ★362 | 富文本编辑工厂, 让代码更清晰. 文本编辑, 高度计算等等... 简便操作, 让你爽到爆. |
FFLabel | ★347 | 自动检测 URLs, @username, #topic# 等关链词(提供响应扩展)。实用的标签文本小组件. |
GRichLabel | ★229 | 支持选择复制.支持自定义选择弹出menu的富文本Label.内部使用YYAsyncLayer提供异步绘制任务. |
WPAttributedMarkup | ★193 | WPAttributedMarkup is a simple utility category that can be used to easily create an attributed string from text with markup tags and a style dictionary. |
UITextViewDIYEmojiExample | ★148 | UITextView编辑时插入自定义表情-简单的图文混编. |
WFReader | ★146 | 一款简单的coretext阅读器,支持文本选择、高亮以及字体大小选择等. |
FuriganaTextView | ★112 | 实现复杂的日文韩文排版. |
RTLabel | ★47 | 富文本,RTLabel支持64位. |
UUColorSwitch | ★17 | Switch 开关动画效果,当打开开关时,Switch可实现平滑渲染过渡到父视图的效果. |
GJCFCoreText | ★14 | 图文混排. |
CTTextDisplayView | 一个CoreText完成的图文混排视图,主要用于文本中显示表情@#URL等,类似于QQ、微博的评论图文功能. |
page
地址 | Stars/Siwft | 简介 |
---|---|---|
PageMenu | ★5.1k | 一个从滚动视图内放置的其他视图控制器构建的分页菜单控制器(例如 Spotify,Windows Phone,Instagram 中的效果) |
MXSegmentedPager | ★1.1k | 分页滚动,多个分页的pageController效果. |
ZJScrollPageView | ★1.1k | 网易新闻, 腾讯视频, 头条 等首页的滑块视图联动的效果OC版的简单方便的集成. |
YNPageViewController | ★1k | 重构版--特斯拉组件、多页面嵌套滚动、悬停效果、美团、淘宝、京东、微博、腾讯新闻、网易新闻、今日头条等标题滚动视图. |
NinaPagerView | ★538 | 一行代码搞定顶部菜单栏。类似网易新闻、今日头条、虎扑看球等app做的一个顶部菜单栏,每栏中有独立的控制器,可自己定制. |
SCSafariPageController | ★387 | A page view controller component that reproduces Mobile Safari's tab switching behavior. |
SPPage | ★284 | 高性能 PageController. |
XHTwitterPaggingViewer | ★225 | 类似 Twitter 风格的导航栏页面控制器。 |
XBScrollPageController | ★129 | iOS 分页控制器,只需传入标题数组和控制器类名数组即可 |
UIPageControl/分页控制器
相关教程
相关开源框架
地址 | Stars/Siwft | 简介 |
---|---|---|
WMPageController | ★2.8k | WMPageController - 是一个方便形成如同网易新闻首页,控制器滑动翻页效果的控制器 |
CHIPageControl | ★2.5k / Y | 一组带有酷炫动画的 page 控件来代替无聊的 UIPageControl。 |
TKRubberIndicator | ★1.3k / Y | 带有橡胶动效的指示器,基于 Swift 4.0。 |
PageControls | ★785 | 这是一个自定义页面控件,可以取代 UIPageControl,其灵感来自于 dribbble,可以使用界面生成器自定义每个控件的外观(颜色、大小和页面)。 |
PageControl | ★108 | UIPageControl 的一个不错的替代品,带动画效果。 |
Page-Control | ★23 | 漂亮、带动画且高度可定制的 UIPageControl 替代品。 |
TYSlidePageScrollView | 多种样式的界面复用 |
Splash/启动页/引导页/新手引导
相关教程
相关开源框架、组件
地址 | Stars/Siwft | 简介 |
---|---|---|
XHLaunchAd | ★3.3k | 开屏广告、启动广告解决方案-支持静态/动态图片广告,mp4视频广告,全屏/半屏广告、兼容iPhone/iPad. |
liquid-swipe | ★2.4k / Y | Cuberto 出的一个控件。 |
CBZSplashView | ★1.5k | Twitter 样式的启动页(欢迎页),缩放后显示主视图。 |
RevealingSplashView | ★1.1k / Y | 有动效的启动页,也是受到 Twitter 启动页的启发。 |
RMParallax | ★627 | RMParallax是一个app启动页引导开源项目,除了细微的翻页视差效果,描述文本的过渡也非常美观(版本新特性、导航页、引导页). |
SKSplashView | ★476 | 创建类似于 Twitter, Uber 和 Ping 的带有动效的启动页控件。 |
ABCIntroView | ★257 | ABCIntroView是一个易于使用的入门类,让你到达主屏幕之前介绍你的应用程序(版本新特性、导航页、引导页). |
CoreNewFeatureVC | ★176 | 版本新特性(引导页),1.封装并简化了版本新特性启动视图!2.添加了版本的本地缓存功能,3.集成简单,使用方便,没有耦合度,4.支持block回调(版本新特性、导航页、引导页). |
ADo_GuideView | ★175 | 转动的用户引导页(模仿网易bobo) 因为没有从app包里抓到@3x的图片,建议在iPhone5模拟器运行,保证效果~ (版本新特性、导航页、引导页). |
TNTutorialManager | ★106 | 内嵌的App使用引导库. |
Wizardry.swift | ★86 / Y | 可重用的方法和框架实现向导式用户界面管理。(版本新特性、导航页、引导页). |
MZGuidePages | ★6 / Y | 自己写的通用导航页,可以直接引入工程使用,请参考案例(版本新特性、导航页、引导页). |
功能演示/介绍/文章等组件/启动页面
地址 | Stars/Siwft | 简介 |
---|---|---|
JazzHands | ★6.5k | Jazz Hands 是用于 UIKit 的基于关键帧的简单动画框架。 可以通过手势,滚动视图,KVO 或 ReactiveCocoa 来控制动画。 |
Onboard | ★6.5k | 一个iOS框架,仅需几行代码即可轻松创建优美而引人入胜的入门体验。 |
Instructions | ★4.3k / Y | 轻松将可自定义的指导标记添加到您的 iOS 项目中,带有气泡效果的浮出文本。 |
EAIntroView | ★3.7k | 可以作为介绍页的组件,可用于 Splash 启动页(欢迎页) |
RazzleDazzle | ★3.2k / Y | 一个简单的基于关键帧的 iOS 动画框架,用Swift编写。非常适合滚动应用介绍。 |
paper-onboarding | ★3k / Y | PaperOnboarding 是一个 material design 样式的滑块。 |
Presentation | ★2.9k / Y | Presentation 可帮助您制作教程,发行说明和动画页面,基于 Swift。 |
BWWalkthrough | ★2.7k / Y | 一个可为应用构建自定义功能演练视图的类。 |
AMPopTip | ★2.6k | 针对给定框架产生动画弹出框,非常适合作为UI提示和入门引导。 |
EasyTipView | ★2.4k / Y | 一个完全可自定义的工具提示视图,基于 Swift。 |
WhatsNewKit | ★1.9k / Y | WhatsNewKit 使您能够轻松展示出色的展示功能。 |
Gecco | ★1.8k / Y | Spotlight 的 iOS 版本,可以需突出显示用于指引的视图元素,基于 Swift,这和我们常见的应用功能引导就比较接近了。 |
MYBlurIntroductionView | ★1.6k | 在 MYIntroductionView 上完善的,用于构建可定制的 app 介绍或者教程页面的框架。 |
VideoSplashKit | ★1.2k | VideoSplashKit - 一个 UIViewController 库,用于使用背景视频创建简单的简介页面。 |
SwiftyOnboard | ★916 / Y | 向项目添加入门引导教程的一种简单方法。 |
ICETutorial | ★814 | 一个功能介绍组件,包含N张全屏图片,您可以滑动以切换到下一页/上一页。 |
GHWalkThrough | ★724 | 一个基于 UICollectionView 的非侵入式介绍页面组件。 |
AlertOnboarding | ★722 | 一个简单而吸引人的 AlertView,说实话,界面还真的简单轻快。 |
JMHoledView | ★551 | 首次启动APP的新手指引 |
ConcentricOnboarding | ★354 / Y | 一套基于 SwiftUI 库的入门展示 flow,可以通过轻点进行操作。 |
SwiftyWalkthrough | ★288 / Y | 在以你的应用程序中创建出色功能演示体验的最简单办法,基于 Swift。 |
Material Showcase iOS | ★269 | 基于 Material Design 指南创建的一个优雅美观的展示视图。 |
OnboardKit | ★264 / Y | 一个可指定的用户入门视图组件。 |
Minamo | ★252 / Y | 一个简单的教程标记库,基于 Swift。 |
CoreLaunch | ★215 | 启动界面进入主画面动画 |
AwesomeSpotlightView | ★190 / Y | AwesomeSpotlightView是一个很好、简单的iOS库,用Swift 5编写。它是高度可定制和易于使用的工具。非常适合应用程序中的教程或教练。 |
InfoView | ★56 / Y | 一个基于Swift的,带箭头的简单信息视图。 |
SwiftyOverlay | ★41 / Y | 一种在应用 UI 组件上添加说明/介绍的快捷方式,不需要任何额外的图片,而且实时生效。 |
Intro | ★32 / Y | 一个iOS框架,可轻松创建简单的动画演示视图,基于 Swift。 |
WVWalkthroughView | ★30 | 一套轻松创建演示,以帮助用户快速入门的工具库。 |
SwiftyOnboardVC | ★18 / Y | 一个情况及的演示组件,将 view controllers 作为子组件,可以无限定制。 |
场景类组件
Login/登录控件
地址 | Stars/Siwft | 简介 |
---|---|---|
LoginKit | ★636 / Y | LoginKit 是一种将登录/注册 UX 添加到iOS应用的快速简便的方法。 |
Cely | ★153 / Y | 一个基于 Swift 的即插即用框架,基于 Swift。 |
LFLoginController | ★148 / Y | 一个自定义的登录屏幕组件,基于 Swift 实现,包括登录、注册、忘记密码等功能。 |
电影选座
地址 | Stars/Siwft | 简介 |
---|---|---|
ZSeatSelector | ★539 / Y | 电影院位置排座位,电影选座。 |
ZFSeatsSelection | ★450 | 高仿猫眼电影选座(选票)模块(High imitation opal film seat selection (vote) module). |
FVSeatsPicker | ★124 | FVSeatsPicker是一个高性能的选座框架,可以直接pod引入,使用时可以直接当做View添加到任何视图控件内部. |
购物车
- shopCarDemobyCX - shopCarDemobyCX一个简易购物车效果,最重要的是可以分单结算,分单个商品结算,代理是主要技术.
- MVVM KVO购物车 - MVVM KVO 购物车(一处计算总价钱).
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
CartDemo | ★260 | CartDemo比较完整的购物车界面及逻辑,商品展示,多选,单选,全选及滑动删除,价格计算. |
ShoppingCartExample | ★154 | 购物车最多star demo. |
shopCartDemo | ★107 | 购物车Demo. |
ZFShoppingCart | ★88 | 仿照美团外卖加入购物车的动态效果. |
ShoppingDemo | ★24 | iOS仿美团外卖饿了吗App点餐动画,购物车. |
shoppingCart1 | ★17 | 仿美团购物车效果。 |
XNQShoppingTrolley | ★17 | 购物车功能 基本功能仿照淘宝的购物车. |
shoppingCart2 | ★12 | 一个购物车demo,包含购物车动画效果、购物车多选、删除、编辑等功能. |
shoppingCart-demo | ★1 | 一个简单的购物车功能实现demo. |
iOS_oShoppingCart_Demo | 简单实现购物车常见的筛选功能. |
通讯录
- 快速查找联系人 - 类似微信联系人搜索的界面,快速查找联系人,并支持点击查询结果.
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
PPGetAddressBook | ★510 | 对联系人姓名第二个字做排序处理,对AddressBook框架(iOS9之前)和Contacts框架(iOS9之后)做了对应的封装处理,一句代码搞定联系人的获取与排序. |
PPGetAddressBookSwift | ★86 / Y | 一行代码获取按A~Z分组精准排序的通讯录联系人 Swift版( 已处理姓名所有字符的排序问题) |
User Consent/用户确认组件
地址 | Stars/Siwft | 简介 |
---|---|---|
SmartlookConsentSDK | ★176 | 它提供了一个可配置的控制面板,用户可以在其中选择自己的隐私选项并存储用户对应用程序的偏好。 |
PrivacyFlash Pro | ★81 / Y | PrivacyFlash Pro 可以 分析 iOS Swift 项目的代码以生成隐私策略。 |
主题
地址 | Stars/Siwft | 简介 |
---|---|---|
LEETheme | ★675 | 优雅的主题管理库- 一行代码完成多样式切换. |
PYTheme | ★425 | PYTheme通过NSObject的分类实现使用简单的主题更换. |
EasyTheme | ★22 | 支持动态主题更换,使用简单。 |
Keyboard/键盘
地址 | Stars/Siwft | 简介 |
---|---|---|
IQKeyboardManager | ★14.3k / Y | 防止键盘向上滑动并覆盖 UITextField/UITextView,是一个 Codeless(基本不用写代码) 的放置型组件,支持 Swift。 |
TPKeyboardAvoiding | ★5.7k | 一种用于在iOS中将文本字段移到键盘之外通用的解决方案 |
TPKeyboardAvoiding | ★5.7k | 一种通用解决方案,用于在iOS中将文本字段移到键盘之外。 |
DAKeyboardControl | ★1.6k | DAKeyboardControl在任何只有一行代码的视图中添加键盘感知和滚动解除。 |
IHKeyboardAvoiding | ★1.4k / Y | 一个用于在显示键盘时薄脆任何 UIView 课件的优雅解决方案,不依赖于 UIScrollView,同时兼容 Swift 和 Objective-C。 |
Typist | ★978 / Y | 一个小巧内置的 Swift UIKit 键盘管理器,无需通知中心即可帮助管理键盘的屏幕显示和行为。 |
MMNumberKeyboard | ★943 | 一个简单数字键盘 |
NgKeyboardTracker | ★817 | 一个 Objective-C 的键盘状态跟踪类库。 |
RDRStickyKeyboardView | ★612 | 常用的UI聊天文本输入框封装 |
YYKeyboardManager | ★473 | 一套 iOS 工具类,允许您访问键盘视图组件和跟踪键盘动画。 |
Toolbar | ★450 | 很棒的自动布局工具栏 |
RFKeyboardToolbar | ★423 | 这是一个灵活的UIView和UIButton子类,用于向 UITextFields/UITextViews 添加自定义按钮和工具栏。 |
KeyboardMan | ★347 / Y | 处理键盘通知和动画,支持 Swift,有中文文档。 |
Ribbon | ★243 / Y | 一个简单的跨平台的 工具栏/自定义输入的组件库,可运营在 iOS 和 macOS 上。 |
KeyboardObserver | ★162 | 一个键盘事件监听器,用户不太复杂的时间处理。 |
MakemojiSDK | ★96 | 一个 iOS Emoji 表情键盘 SDK。 |
NumPad | ★70 / Y | 受到 Square 启发的的数字键盘,支持 Swift。 |
KeyboardHideManager | ★55 / Y | 通过轻击视图就可以隐藏键盘你的组件,基于 Swift,代码量少。。 |
RSKKeyboardAnimationObserver | ★43 | 在 UIViewController 系列组件中中显示/取消显示键盘动画。 |
WebView/浏览器视图
相关教程
Web View 相关开源框架
地址 | Stars/Siwft | 简介 |
---|---|---|
SVWebViewController | ★2.6k | 另一个内置浏览器,基于 Objective-C。 |
RNCachingURLProtocol | ★950 | webView 离线缓存库。 |
SwiftWebVC | ★299 / Y | 一个简单内置浏览器,基于 Swift。 |
JWNetAutoCache | ★147 | UIWebview使用缓存并且保证实时性此处输入代码。 |
PTPopupWebView | ★111 | PTPopupWebView 是一个简单好用的 WebView,可以作为弹出框使用。 |
Otafuku | ★54 / Y | Otafuku 针对 WKWebView 做了增强,提供了一些有用的工具类,基于 Swift。 |
地址 | Stars/Siwft | 简介 |
---|---|---|
react-native-webview | ★2.6k | 基于 React Native 实现的一个 WebView. |
GRMustache | ★1.4k / Y | 一个类似templateEngine的html渲染工具,可以更加有效的帮助大家完成数据生成HTML的过程. |
HybridPageKit | ★1k | 一个针对新闻类App高性能、易扩展、组件化的通用内容页实现框架. |
WKWebView | ★848 | 取代 UIWebView 的一个插件 - 在苹果发布一个没有 bug 的 WKWebView 之前非常有用。 |
AXWebViewController | ★753 | AXWebViewController 是用于在应用程序中浏览 web 内容的 webViewController。 |
MGTemplateEngine | ★443 | MGTemplateEngine比较象 PHP 中的 Smarty、FreeMarker 和 Django的模版引擎,是一个轻量级的引擎,简单好用。只要设置很多不同的HMTL模版,就能轻松的实现一个View多种内容格式的显示,对于不熟悉HTML或者减轻 工作量而言,把这些工作让设计分担一下还是很好的,也比较容易实现设计想要的效果. |
swift-deep-linking | ★432 / Y | 定义深度链接的简单方式,基于 Swift。 |
highlight | ★360 / Y | 用于 Keynote 的功能丰富的语法高亮。 |
GTMNSString-HTML | ★344 | 谷歌开源的用于过滤HTML标签. |
WKWebView | ★250 | OC版WKWebView 支持POST请求 加载本地页面 直接加载网页 JS交互 集成支付宝/微信URL支付功能 仿微信返回按钮. |
iOS-WebView-JavaScript | ★249 | iOS UIWebView,WKWebView 与 JavaScript的深度交互. |
BAWKWebView | ★198 | 用分类封装 WKWebView,一行代码搞定 request、URL、URLString、本地 HTML文件、HTMLString等请求,一个 block 搞定 title、progress、currentURL、当前网页的高度等等所需. |
WKWebViewExtension | ★178 | An extension for WKWebView. Providing menuItems delete 、support protocol 、clear cache of iOS8 and so on. |
IOSCallJsOrJsCallIOS | ★133 / Y | IOSCallJsOrJsCallIOS:利用iOS7.0后出来的JavaScriptCore framework,webview与Js交互是常见的需求。OC版本与swift版本。《OC JavaScriptCore与js交互》,《Swift JavaScriptCore与js交互》。 |
WKWebViewH5ObjCDemo | ★99 | 学习如何使用OC实现WKWebView与H5交互,并学习其API使用. |
PPHTMLImagePreviewDemo | ★89 | 该Repo用于演示APP中点击HTML的图片来预览图片的功能. |
LYWebviewController | ★44 | 基于UIWebview-简书文章阅读页面的模仿demo. |
WKWebViewTestDemo.swift | ★33 / Y | WKWebViewTestDemo:WKWebView新特性及JS交互,文章讲解。 |
D3Generator | ★27 | D3Generator根据dict字典生成对象。适用webview和push推送时,根据后台传回字典实现动态跳转.实现说明. |
ZFWKWebView | ★15 | 一款封装较为全面的可自定义的WKWebViewController,用户友好,提供丰富的功能和JS交互 |
其他开源 UI 组件/工具
- RedBeard - 一个完整的框架,消除了为制作精美,功能强大的iOS应用程序的所带来的痛苦,有收费版也有免费的,收费版的控件的确很精美。
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
iCarousel | ★11.6k | 一个简单,高度可定制,数据驱动的 3D 旋转木马(跑马灯)控件,适用于iOS和Mac操作系统。 |
Material | ★11.5k / Y | Material 是一个动画及图形框架,可已让开发人员轻松创建漂亮的 iOS 应用程序,组件还是不少的。 |
FlatUIKit | ★7.9k | 适用于 iOS 的扁平化 UI 组件集合,针对Foundation的扩展。 |
Texture | ★6.4k | 一套平滑异步(响应式)的 iOS UI 框架。 |
FSPagerView | ★5.3k / Y | FSPagerView 是一个好用的滑屏库, 对创建 Banner、Product Show、Welcome/Guide 也、Screen/ViewController 这些页面的滑动效果非常有帮助。 |
Material Components | ★4k / Y | 一套 UI 组件,可以让开发者使用 Material Design。 |
tapkulibrary | ★4k | tap + haiku = tapku, 一个精心设计的 iOS 开源框架,看看demo你就知道干啥的了。 |
RKNotificationHub | ★3.1k | 一种快速向 UIView 添加通知图标的方法,让每个 UIView 都可以成为通知中心。 |
FDStackView | ★2.6k | iOS 中可以直接使用 UIStackView 。 |
BEMCheckBox | ★2.5k | 一个雅致的 iOS 复选框(Checkbox)控件。 |
Navigation Stack | ★2.3k | Navigation Stack 是一个基于"栈"模式的导航控制器 |
OAStackView | ★2.2k | OAStackView 尝试将 stackview 移植回iOS 7+。 OAStackView 旨在复制 UIStackView 中的所有功能。 |
ClassicKit | ★2.2k / Y | 用在 iOS 上的经典电脑风格 UI 组件集合,就像 window 95 那样老土的接口。 |
SwiftTheme | ★1.9k / Y | 一个强大的主体/皮肤管理器。 |
Pulley | ★1.8k | 一个模仿 iOS 10 地图 UI 的库。 |
NotchKit | ★1.8k / Y | 在iPhone X上隐藏缺口(刘海)的简单方法 |
MPParallaxView | ★1.7k / Y | 使用 Swift 实现的视觉差效果控件,有点 3D 的感觉。 |
Pageboy | ★1.5k / Y | 一个简单好用的页面控制器。 |
BAFluidView | ★1.4k | 一个模拟2D流动效果(像流水一样)的 UIView 组件。 |
UberSignature | ★1.2k | 提供一个iOS视图控制器,允许用户用手指以逼真的样式绘制手写签名。 |
Magnetic | ★1.1k / Y | SpriteKit 是个浮动汽包效果的控件,支持拾取功能,主要受到 Apple Music 的启发。 |
Cacao | ★1k / Y | 纯 Swift 实现的跨平台 UIKit(Cocoa Touch)实现(同时支持Linux)。 |
Splitflap | ★1k / Y | 一个分屏显示框架,可用于呈现带有变化效果字母数字文本,例如经常用作机场或火车站的公共交通时间表或带有一些翻牌时钟,也有点像老式的比赛记分牌。 |
GaugeKit | ★980 / Y | 可定制的仪表组件,可以方便地仿制苹果样式的仪表盘。 |
PullUpController | ★978 / Y | 一个 Pull up controller ,像 iOS 地图一样具有多个粘点(sticky points) |
LeeGo | ★964 / Y | 一套声明式,可配置和高度可重用的 iOS UI,使用起来就像制作乐高积木一样,支持 Swift |
LxGridView-oc | ★951 / Y | LxGridView-swift - 利用UICollectionView模仿iOS系统桌面图标的交互,作用如动图。 |
StatusProvider | ★874 | 一个在 ViewController 和 Views 中处理初始加载、空视图和错误处理的协议。 |
Motif | ★872 | 一个轻量级的可定制的 iOS 样式表框架,样式表基于 JSON 格式。 |
ElongationPreview | ★862 / Y | ElongationPreview 是一个弹出样式的视图控件,支持 3D-Touch 和 手势。 |
EZSwipeController | ★818 | UIPageViewController 类似于 Snapchat/Tinder/iOS 主页的控件。 |
BouncyPageViewController | ★817 | 一个带有反弹效果的滑动分页控件。 |
SCTrelloNavigation | ★805 | iOS上类似 trello 的导航动效框架实现 |
StackViewController | ★804 / Y | 使用 UIStackView 和 view controller 组合来显示列表中的内容的控制器。 |
EPSignature | ★788 / Y | 一个 iOS 的签字组件,基于 Swift. |
WMDragView | ★787 / Y | WMDragView可以自由拖曳的view |
NightNight | ★775 / Y | 一种向 Swift 项目集成夜间模式的优雅方式。 |
JDFlipNumberView | ★740 | 一种翻牌子效果的控件,就像老式比赛记分牌或者日历。 |
DrawerKit | ★735 | DrawerKit允许一个 UIViewController 以一种类似于苹果地图的方式模式呈现另一个 UIViewController。 |
VisualEffectView | ★714 / Y | 带有颜色的 UIVisualEffectView 子类。 |
Shiny | ★689 / Y | 彩虹效果视图(灵感来自苹果Pay)。 |
APParallaxHeader | ★636 | UIScrollView、UITableView头部视图视差效果 |
SMSegmentView.swift | ★625 / Y | 高可定制化,既支持横向,也支持纵向布局的图文 Segment Control 组件,节选器。 |
OverlayContainer | ★604 / Y | 用于基于叠加层界面的开发,例如 iOS 12 Apple Maps 或 Stocks 应用程序中的界面。 |
AKPickerView-Swift | ★568 / Y | 一款小而美的 3D 效果选择器。 |
SwViewCapture | ★557 / Y | 一个不错的iOS视图捕获Swift库,可以捕获所有内容。 |
WZDraggableSwitchHeaderView | ★556 | 可以显示 viewControllers 切换时的状态。 |
BackgroundVideoiOS | ★554 / Y | 一个可以让你为 iOS 视图添加背景视频的对象,支持Swift 和 Objective-C,很像动态壁纸。 |
Reactions | ★549 | 一个高度可定制的表情反馈控件,让用户可以有更多的方式表达心情,有点像 Facebook。 |
CardStackController | ★527 | 一个将 view controller 显示为卡片的控件,该控件应用在 Jobandtalent 这个 APP 中。 |
Haptica | ★518 / Y | 一个简单的触觉反馈生成器。 |
Pages | ★461 | 一个分页控件,使 UIPageViewController 用起来更简单。 |
FAQView | ★450 / Y | 一个 iOS FAQ 界面控件,基于 Swift. |
URWeatherView | ★433 | 在 View 上创建天气效果。 |
UIView-draggable | ★420 | 让 UIView 具备可拖拽的能力。 |
ShadowView | ★372 / Y | 在UIView上简化阴影管理。 |
MEVHorizontalContacts | ★357 | 是 iOS UICollectionViewLayout 子类,用来显示具有可配置菜单项的联系人列表。 |
SegmentedProgressBar | ★342 | Snapchat / Instagram Stories 风格的带动画的指示器。 |
SwiftyUI | ★324 / Y | 高性能且轻量的 UIView, UIImage, UIImageView, UIlabel, UIButton(每个组件只有一个类)等。 |
PageController | ★321 / Y | 无限分页(滚动)控制器,可以实现内容体和标题栏的延迟滚动。 |
fluentui-apple | ★302 | 基于 Fluent Design System 的 UI 组件库,用于创建微软风格 UI 组件,微软出品的。 |
Macaw-Examples | ★292 | 针对 Macaw 的使用例子。 |
HGRippleRadarView | ★278 | 一个漂亮的的雷达视图,可以显示附近的项目(用户,餐厅,0等),还有涟漪动画,且完全可定制。 |
SwiftVideoBackground | ★270 / Y | 一个易用的 UIView 子类,用来实现视频背景。 |
AZExpandableIconListView | ★266 / Y | 一个可折叠组件(折叠效果)的 View 扩展,基于 Swift |
ISPageControl | ★254 | 类似于 Instagram 中使用的页面控件。 |
EVFaceTracker | ★245 | 可以实时根据人脸的角度,动态计算控件距离和角度(比如阴影),有点增强现实的感觉。 |
ConfettiView | ★231 | 一个用户创建五彩纸屑满天飞效果的控件。 |
FlourishUI | ★225 | 一套高可配置、开箱即用的 UI 套件。 |
IGColorPicker | ★209 / Y | 一个可自定义的 iOS 颜色拾取器,基于 Swift。 |
Newly | ★199 | Newly 用于添加类似于 Twitter/Facebook/Linkedin 的下拉样式按钮。 |
HoneycombView | ★196 / Y | HoneycombView 是用来显示类似 Honyecomb 布局的 iOS UIView,由 Swift 实现。★ |
HorizontalDial | ★193 / Y | 像Instagram一样的水平滚动拨号控件。 |
KCJogDial | ★193 | 提供控制功能的 UIView,类似一个转轮控制器。 |
ApplyStyleKit | ★183 / Y | 一个优雅的样式框架,基于 Swift 方法链。 |
NightView | ★163 | 是一个开源库,它在 iOS 上生成美丽、随机、星空,制作夜景不错。 |
EXTView | ★157 | 使用 IB_DESIGNABLE 和 IBInspectable 为 Interface Builder 提供了 UIView 扩展。 |
DCKit | ★141 / Y | 一组 iOS 控件集,具有有用的 IBInspectable 属性, 基于 Swift。 |
phone-number-picker | ★140 / Y | 一个简单易用的电话号码拨号控件,可以输入国家地区码,有点像 WhatsApp。基于 Swift。 |
DateRangePicker.swift | ★125 / Y | 可能是目前最好的 OS X 日期选择器,高扩展性,界面风格看起来很舒服,不过注意,是 OS X 开发专用。 |
DistancePicker | ★118 / Y | 一个使用Swift编写的自定义控件,可通过平移手势选择地理距离,主要用在地图上。 |
AZEmptyState | ★87 | 一个 UIControl 子类,用于简化空 state 的创建。 |
StackLayout | ★77 | 一种替代 UIStackView 的通用自动布局模式。 |
PPNumberButtonSwift | ★69 / Y | 仿京东淘宝商品数量的加减按钮 Swift 版,可定制程度高,使用简单! |
Panda | ★65 | 可以用声明方式创建视图层次结构。 |
YJFavorEmitter | ★62 | 一个非常好用的点赞粒子发射器 |
AmazingBubbles | ★59 | 类似于 Apple Music 的汽包采集器,且有动画效果。 |
GDGauge | ★55 | 完全可定制,美观,易用的仪表盘控件。 |
YPDropMenuViewDemo.swift | ★54 / Y | 一款DropMenu,menuView,类似之前美团的下拉菜单,支持swift2.2,因为用到iOS8.的毛玻璃。所以想支持到iOS8.0,支持自定义,支持等宽排列,支持从左向右排列。 |
NotchToolkit | ★52 | 允许开发人员以创造性的方式使用iPhone X 缺口。 |
Overlay | ★49 / Y | Overlay 可以让你想编写 Swift 代码一样来编写 CSS。 |
Sejima | ★47 | 另一组 UI 组件集合。 |
Curry | ★45 | Curry 是一套针对 Foundation 和 UIKit 的功能增强框架。 |
Mixin | ★43 | 一个面向协议编程的框架,可以轻松向现有类中添加扩展。 |
BatteryView | ★36 / Y | 一个简单的电池状UIView。 |
LayoutTrait | ★31 / Y | swift 一个小类库。 做iPad 多任务分屏 适配的同学可以看一下。 |
HamsterUIKit | ★25 | 一个简单的 iOS 图表 A 组件。 |
ViewComposer | ★25 | let lbl: UILabel = [.text("Hello"), .textColor(.red)] - 使用表示视图属性的枚举的数组字面量创建视图。 |
GDCheckbox | ★20 | 一个易于使用的自定义复选框/单选按钮组件,支持IBDesign Inspector。 |
N8iveKit | ★18 / Y | 一组让 iOS 开发变得更加有趣的框架,基于 Swift |
Shades | ★13 | 可以轻松地向 UIView 中添加阴影、边框和圆角。 |
STAControls | ★12 | 一个 UIControl 易用的子类, (就像 UIControls 的 Three20/NimbusKit ) ,基于 Objective-C. |
JMRoundedCornerSwift | ★12 / Y | swift版本:UIView设置不触发离屏渲染的圆角! |
Spots | ★11 / Y | Spots 一个跨平台的视图控制器框架,用于构建基于组件的 UI,让开发更搞笑,功能很完备,但貌似还没有火起来。 |
LCUIComponents | ★7 | 可以在屏幕上其他内容(例如带有数据列表的弹出窗口)之上创建临时视图的框架。 |
LMArticleViewController | ★6 | 一个 UIViewController 子类,可以让新闻,博客之类的文章更好看。 |
KPActionSheet | ★6 | 一个默认动作表的替代品,但简单易用。 |
PanelDemo | 仪表盘,模拟汽车的车速仪表盘,一些简单的数学知识。 |
文本处理
地址 | Stars/Siwft | 简介 |
---|---|---|
SlackTextViewController | ★8.5k | 一个非侵入式的 UIViewcontroller 子类,提供了一个可以随文字长度变化的大小的文本框和一些其他有用的消息特性,手势识别、自动填充、多媒体合并,SlackTextViewController 可以替代 UITableViewController & UICollectionViewController。 |
YYText | ★8.3k | 一个强大的 iOS 文本处理框架,用于显示和编辑富文本。 |
Nimbus | ★6.5k | Nimbus是一个面向经验丰富的iOS软件设计师的工具包,包括富文本处理,超链接,Web View 等相关功能,three20 停止更新后的替代品。 官网 |
DTCoreText | ★5.9k | 利用 CoreText 使用 HTML 代码的方法。 |
PhoneNumberKit | ★3.7k / Y | 一个用于解析、格式化、校验国际电话号码的 Swift 库,其主要是受到 Google libphonenumber 的启发。 |
ZSSRichTextEditor | ★3.5k | 一个漂亮的 iOS 文本所见即所得编辑器,支持多颜色的文本高亮。 |
BonMot | ★2.7k / Y | Swift中漂亮,简单的属性字符串。 |
SwiftRichString | ★2.3k / Y | 一个 Swift 优雅无痛的属性字符串管理库,基于 Swift 字符串。 |
Twitter Text Obj | ★2.3k | Twitter 文本处理库,基于 Objective-C 实现。 |
libPhoneNumber-iOS | ★2.1k | libphonenumber (Google 的电话号码处理框架) 的 iOS 实现。. |
TextAttributes | ★2.1k / Y | 一种更简单的组合属性字符串的方法。 |
RichEditorView | ★1.6k / Y | RichEditorView 是一个简单的模态的视图组件,内嵌为 UIView 的子类,用于富文本编辑。 |
MarkdownView | ★1.5k / Y | 一个 iOS Markdown 视图控件。 |
Down | ★1.5k / Y | 一个使用 Swift 实现的极快的 Markdown 渲染工具,基于 cmark。 |
SwiftString | ★1.5k / Y | Swift的全面,轻量级字符串扩展库。 |
SwiftyAttributes | ★1.2k / Y | 一个 Swift 扩展,使得属性字符串的使用变得轻而易举。先进的 API ,操作 attributed 字符串的利器。 |
MMMarkdown | ★1.2k | 一个将 Markdown 转成 HTML 的 Objective-C 静态库。 |
Format | ★1.2k / Y | 一个 Swift 文本格式化工具包。 |
SwiftyMarkdown | ★1.2k / Y | 将 Markdown 文件或字符串转成 NSAttributedString。 |
CocoaMarkdown | ★1.1k | 面向 iOS 和 macOS 的 Markdown 解析渲染程序。 |
Highlightr | ★943 | 一个 iOS 和 macOS 语法高亮工具,支持176种语言、79种样式。 |
Money | ★918 / Y | 用于处理货币和 Swift 类型。 |
Highlighter | ★897 / Y | 可以高亮任何你想搞高亮的东西。 Highlighter 会神器地找到对饮的UI对象,如在 UITableViewCell 或其他类中的 UITextView, UITexTfield, UIButton 等。 |
Attributed | ★715 / Y | 一个现代的 Swift 微型框架,用于属性字符串 strings。 |
Atributika | ★687 / Y | 一种创建 NSAttributedString 的简单方式,基于对类 HTML 标签, hashtags, mentions, RegExp(正则)NSDataDetector。 |
Mustard | ★685 | 一个灵活的字符串分割而工具,分割过。 |
fuse-swift | ★683 / Y | 一个轻量级的模糊搜索库,无任何依赖。 |
NSStringEmojize | ★645 | 用于将 Emoji 代码转成对等的 Unicode 代码的工具, 仅支持 Objective-C。 |
MarkdownTextView | ★643 | 一个富 Markdown 文档编辑控件。 |
Notepad | ★628 / Y | 一个完全主体化的 markdown 编辑器,支持实时语法高亮。 |
Guitar | ★628 / Y | 一个使用 Swift 的跨平台字符串库。 |
Translucid | ★548 / Y | 一个轻量级的库,可用于将图片设置成背景文字的图形。 |
MarkdownKit | ★507 / Y | 一个简单的 Markdown 解析器,基于 Swift 实现。 |
Marklight | ★499 / Y | 适用于 iOS 的 Markdown 语法高亮。 |
Input Mask | ★446 / Y | 一个基于模式的用户输入数据格式化,解析和校验工具。 |
Reductio | ★394 / Y | Swift 中的文本自动摘要生成器。 |
AttributedTextView | ★379 / Y | 一个创建支持多个链接(包括主题标签和提要)的属性 UITextView 的一种最简单方法。 |
EFMarkdown | ★371 | 一个轻量级的 iOS Markdown 库。 |
Heimdall | ★366 | Heimdall 是一个用于简单加密/解密操作的 Security 框架的封装。 |
Smile | ★340 / Y | Swift 中使用 Emoji 表情。 |
DTRichTextEditor | ★332 | iOS 中的一个富文本编辑器。 |
Marky Mark | ★217 / Y | 一个高度可定制的原生 Markdown 解析及渲染工具,基于 Swift。 |
PostalCodeValidator | ★202 | 支持200多个地区的邮政编码验证器。 |
SwiftValidators | ★194 / Y | 一套 Swift 字符串校验工具,灵感来自于 validator.js. |
Pluralize.swift | ★169 / Y | 强大的 Swift String 单数转换复数扩展。 |
Sprinter | ★162 / Y | 用于在 iOS 和 macOS 上格式化字符串的库。 |
Croc | ★119 / Y | 用于 Emoji 解析和查询的轻量级 Swift 库。 |
pangu.Objective-C | ★113 | 使用 Objective-C 实现偏执文本间距。 |
SZMentionsSwift | ★93 / Y | 处理 mentions 的 Swift 库。 |
EmojiKit | ★87 / Y | 在 Swift 中轻松进行表情(emoji)符号查询。 |
Emojica | ★87 | 用自定义表情符号集替换字符串中的标准表情符号, 例子 Twemoji 或 EmojiOne. |
NBEmojiSearchView | ★87 | 一个支持搜索并且可以集成到文本控件中的 emoji 下拉列表视图。 |
SmarkDown | ★68 / Y | 一个 markdown 语言的纯 Swift 实现。 |
StringStylizer | ★66 | StringStylizer 通过方法链和运算符使 NSAttributedString 更加直观,易用。 |
Tribute | ★59 | NSAttributedString 的无程序化创建方式。 |
NoOptionalInterpolation | ★47 / Y | 除去字符串插值中的“ Optional(...)”和“ nil”。 。 |
Roman | ★36 / Y | 在 Swift 中的无缝罗马数字转换。 |
ISO8601 | ★19 / Y | 一个超级简单的 ISO8601 格式日期格式化工具,基于 Swift。 |
StyleDecorator | ★17 / Y | 通过将属性连接到必要部分来简化字符串的设计,支持 Swift。 |
KKStringValidator | ★17 | 快速见得的字符串验证程序,基于 UITextField 的扩展。 |
ISO8859 | ★13 / Y | 将 ISO8859 1-16 编码的文本转成 String 类型字符串,基于 Swift 实现。面向 iOS, tvOS, watchOS 和 macOS. |
RealTimeCurrencyFormatter | ★13 | 一个基于 ObjC 的国际国币格式格式化工具。 |
SZMentions | ★10 / Y | 一个 mention 库,不过已经图推荐使用,停止维护了,可以使用 SZMentionsSwift |
CodeMirror Swift | ★7 / Y | 适用于 macOS 和 iOS 的代码镜像的轻量级封装,支持语法突出显示和主题。 |
FormatterKit | ★5 | stringWithFormat: 用户适用于复杂文本格式化的工具。 |
地图
地图相关教程
地图相关框架
- 百度地图iOS SDK - 一套功能丰富的地图开发工具包。
- 百度鹰眼轨迹iOS SDK - 一套能够进行绑路纠偏的轨迹开发工具包。
- 打开自带地图、百度地图、腾讯地图 - 打开自带地图、百度地图、腾讯地图。
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
Mapbox GL | ★3.8k | 一个 iOS 上使用 OpenGL 渲染 Mapbox 矢量地图块的框架。 |
Route-me | ★1.3k | iOS 开源地图框架 |
ArcKit | ★1.3k / Y | Location and activity recording framework for iOS |
GEOSwift | ★1.2k / Y | Swift地理引擎。 |
Cluster | ★1.1k / Y | 简易地图注释聚类。 |
FlyoverKit | ★657 / Y | FlyoverKit使您可以零维护在MKMapView上呈现令人惊叹的360°飞越视图,同时保持完整的配置可能性。 |
WhirlyGlobe-Maply | ★648 | 适用于iOS的3D地球和平面地图SDK。 该工具包具有用于对地图或地球进行细粒度控制的打来那个API,它也可以读取各种GIS格式的数据。 |
ClusterKit | ★448 | 一个针对MapKit,Google Maps和Mapbox的iOS地图集群框架。 |
PXGoogleDirections | ★262 / Y | 适用于iOS的Google Directions API帮助程序,Swift编写。 |
NAMapKit | ★260 | 允许你在 iPhone 应用使用自定义地图,并尝试模仿 Mapkit 框架的一些行为。 |
CMMapLauncher | ★195 | 用于 iOS 中在各种地图应用中显示方向的便捷框架。 |
MapViewPlus | ★146 / Y | 使用任何自定义视图作为带有精美动画的MKMapView的自定义标注视图。 另外,可以轻松地将任何图像用作注释视图。 |
YJLocationConverter | ★128 | 中国国测局地理坐标(GCJ-02)<火星坐标>、世界标准地理坐标(WGS-84) 、百度地理坐标(BD-09)坐标系转换工具类. |
JDSwiftHeatMap | ★105 / Y | JDSwiftMap是IOS本机MapKit库。 您可以轻松制作高度定制的HeatMap。 |
MSFlightMapView | ★40 | 在Google地图上添加测地线飞行并为其设置动画。 |
地图相关SDK
图形/绘图工具
相关教程
相关框架
- CoreGraphics、CoreAnimation、SVG、CGContext库、工具*
地址 | Stars/Siwft | 简介 |
---|---|---|
Macaw | ★5.2k / Y | 强大且易于使用的矢量图形库,支持SVG,基于 Swift |
SVGKit | ★3.8k | 在 iOS / macOS (当前仅支持 iOS )通过本地渲染显示 SVG 图片,包括和 SVG 交互的功能 。 |
jot | ★1.8k | 一个易于使用的用于在图片上绘图和添加文字的 iOS 框架。 |
SwiftSVG | ★1.5k / Y | 具有多个接口选项(字符串、NS/UIBezierPath、CAShapeLayer和NS/UIView)的单通道SVG解析器。 |
NXDrawKit | ★1.3k | NXDrawKit 是 iOS 上一个简单好用的绘图工具. |
Snowflake | ★913 / Y | Swift 的 SVG 库. |
YYAsyncLayer | ★602 | 用于异步渲染和展示的 iOS 工具类 |
Drawsana | ★418 | 用于构建栅格绘图和图像标记视图的iOS框架。 |
EPShapes | ★393 | 在界面生成器中设计形状。 |
EZYGradientView | ★372 | 无需一行代码即可创建渐变和模糊渐变。 |
InkKit | ★369 / Y | 一次编写,多平台绘图,支持 iOS 和 macOS. |
ProcessingKit | ★312 | 可视化设计库,用于 iOS 和 OSX. |
AnimatedGradientView | ★247 | 一个简单的框架,可向您的iOS应用添加动画渐变。 |
MKGradientView | ★146 / Y | 基于核心图形的渐变视图,能够生成用Swift编写的线性(轴向),径向(圆形),圆锥形(角),双线性(四点)渐变。 |
PKCoreTechniques | ★141 | 在慕尼黑工业大学的2012 iOS游戏设计研讨会上的演讲配套代码,针对 CoreGraphics + CoreAnimation。 |
MPWDrawingContext | ★97 | CoreGraphics CGContext的 Objective-C 封装。 |
GraphLayout | ★88 | 图形可视化的UI控件,基于 Graphviz。 |
Rough | ★76 / Y | 使您可以绘制粗略的手绘风格。 |
AEConicalGradient | ★69 / Y | 用Swift编写的渐变层。 |
BlockiesSwift | ★44 / Y | 个人资料图片生成器 |
Graphicz | ★41 / Y | 一套轻量级的针对 CoreGraphics 的补充框架。 |
DePict | ★34 / Y | Swift的一个简单的、声明式的绘图框架! |
HxSTLParser | ★18 | 针对 SceneKit 的 STL 加载器. |
图表
漂亮、简单且可定制的图表工具
图表开源框架
地址 | Stars/Siwft | 简介 |
---|---|---|
ios-charts | ★30.8k | 一个强大的图表框架,MPAndroidChart 在 iOS 上的移植。 |
Charts | ★22.8k / Y | 一个功能强大的图表框架 |
PNChart | ★9.7k | 一个简单而漂亮的图表库,各种各样的图表,用于Piner和CoinsMan |
Scrollable-GraphView | ★5.1k / Y | iOS的自适应可滚动图形视图,用于可视化简单的离散数据集,基于 Swift 实现. |
Scrollable-GraphView.swift | ★5.1k / Y | 灵动感十足的自适应、可定制滚动曲(折)线图表库。 |
AAChartKit | ★3.9k | 极其精美而又强大的 iOS 图表组件库,支持柱状图、条形图、折线图、曲线图、折线填充图、曲线填充图、气泡图、扇形图、环形图、散点图、雷达图、混合图等各种类型的多达几十种的信息图图表,完全满足… |
JBChartView | ★3.8k | 基于iOS的折线图和条形图图表库。 |
BEMSimpleLineGraph | ★2.7k | 一套优雅美观的的iOS 图表库。 |
core-plot | ★2.7k | 一个二维图形库,高度可定制,能够绘制多种类型的图形。 |
SwiftCharts | ★2.1k / Y | 易用且高度可定制的图表库为iOS。 |
XYPieChart | ★1.8k | iOS应用程序的简单动画饼图。 |
TEAChart | ★1.2k | 简单直观的iOS图表库。贡献图、时钟图和条形图 |
Graphs | ★970 | 轻量级图表视图生成器。 |
chartee | ★953 | 一套移动平台的图表库。 |
SwiftChart | ★892 / Y | iOS的折线图和面积图库 |
FSLineChart | ★849 | iOS的折线图库。 |
ZFChart | ★835 | 模仿PNChart写的一个图表库,用法简单,暂时有柱状图,线状图,饼图三种类型,后续可能会更新新的类型. |
XJYChart | ★826 | 一个标量的图标库,支持动画,点击滑动和区域高亮等功能。 |
EatFit | ★651 | Eat-fit 是受 Google-fit 启发的具有吸引力的数据表示的一个组件。 |
EChart | ★650 | iOS/iPhone/iPad图表,图表。支持事件处理和动画。 |
RealtimeGradientText | ★634 | Fun With CALayer Mask 刚好今天开源了一个有趣的项目 RealtimeGradientText,所以也好聊一下 CALayer 的 Mask,说明. |
Swift LineChart | ★584 / Y | 用Swift编写的iOS折线图库。 |
MagicPie | ★534 | 很棒的基于层的饼图。速度惊人,完全可定制,MagicPie 还提供令人惊叹的动画。 |
FSInteractiveMap | ★532 | 在iOS上可视化矢量地图并与之交互的图表库,就像 Geochart,只不过是 iOS 版本的. |
PieCharts | ★458 | 易于使用和高度可定制的iOS饼图库。 |
ANDLineChartView | ★424 | ANDLineChartView 是一个易用的,基于视图的类来显示动画折线图 |
JYRadarChart | ★418 | iOS开源雷达图的实现 |
YOChartImageKit | ★406 | 支持在watchOS上绘制图表,看它最近更新挺勤快的,可以关注一下. |
TWRCharts | ★373 | 一个用于ChartJS的iOS包装器,利用本地Obj-C代码的强大功能轻松构建动画图表。 |
KLine | ★317 | (CAShapelayer + UIBezierPath)绘制K线支撑横竖屏切换、刷新、长按、缩放、masonry适配,完美支持金融产品 非常的流畅,占用内存少,使用矢量进行填充K线,持续更新. |
TKRadarChart | ★193 / Y | 一个基于 Swift 的开源雷达图库. |
JTChartView | ★126 | JTChartView 是一个完全可定制的轻量级图表解决方案。 |
Dr-Charts | ★91 | Dr-Charts 是一个高度可定制,且易用的交互式图表框架,基于 Objective-C。 |
ChartProgressBar | ★75 | 使用进度条样式绘制图表。 |
DDSpiderChart | ★75 / Y | 易用且可定制的蜘蛛图(雷达图)库,基于 Swift 实现. |
CoreCharts | ★72 | CoreCharts 是一个简单而强大的苹果产品图表库。 |
CSPieChart | ★39 | PieChart 的 iOS 开源版本。非常易用且可定制化 |
SMDiagramViewSwift | ★38 / Y | 在一个圆图中满足不同数据视图的iOS应用程序的可爱和非常灵活的库。 |
FlowerChart | ★15 | 具有自定义外观动画的花形图表,完全矢量化。 |
图表相关资源
地址 | Stars/Siwft | 简介 |
---|---|---|
awesome-ios-chart Objective-C | ★1.5k | 针对 Objective-C 的图表资源列表,有很多开源框架。 |
awesome-ios-chart Swift | ★1.5k / Y | 针对 Swift 的图表资源列表,有很多开源框架。 |
动画、转场效果
动画
动画相关开源框架
- AppAnimations - 一组 iOS 动画库,目前有 58 个动效
- Canvas - 无需代码就可以在 Xcode 中显示动画 http://canvaspod.io,很强大。
- Core Animation笔记,基本的使用方法 - Core Animation笔记,基本的使用方法:1.基本动画,2.多步动画,3.沿路径的动画,4.时间函数,5.动画组.
- cadisplaylinkanduibezierpath - CADisplayLink结合UIBezierPath的神奇妙用.
- 简单实用的无限循环轮播图 - 简单实用的无限循环轮播图.
- 渐变特效文字 - 做了一个仿iPhone的移动滑块来解锁的渐变特效文字,还有一个类似ktv歌词显示的文字特效.
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
Pop | ★19.8k / Y | Pop 是一个针对 iOS, tvOS 和 OS 的动画效果扩展库,facebook 出品,支持 Swift 和 Objective-C |
Lottie | ★19.7k / Y | 一个iOS库,用于实时渲染 Adobe After Effects 中的原生矢量动画。 |
Spring | ★13.7k / Y | 一个用来简化动画效果实现的类库,使动画在简单性、可链接性与声明性方面有所提高,基于 Swift。 |
Shimmer | ★9.2k | 一种向 iOS 添加闪烁效果的简单方式,Facebook出品。 |
IBAnimatable.swift | ★8.4k / Y | 第三方开源库IBAnimatable可以帮助我们在Interface Builder和Swift Playground里面设计UI, 交互, 导航模式, 换场和动画。整个App 都是通过 IBAnimatable 在Interface Builder 设计完成,没有任何一行代码。 |
IBAnimatable | ★8.4k / Y | 通过 IBAnimatable 不需要一行代码就可以在 Interface Builder 中构建应用程序,可以用来设计 UI 原型,包括交互,导航、动画等功能。 |
ViewAnimator | ★5.8k / Y | 只需一行就可以使您的UI栩栩如生。 |
popping | ★5.6k / Y | popping是一个POP使用实例工程. |
AwesomeMenu | ★5.1k | 该项目主要是使用 CoreAnimation 还原了 Path menu 的动画效果 Path 2.0 menu using CoreAnimation :) https://github.com/levey/AwesomeMenu |
awesome-ios-animation | ★4.7k | iOS Animation 主流炫酷动画框架(特效)收集整理 收集整理了下iOS平台下比较主流炫酷的几款动画框架. |
fantastic-ios-animation.swift | ★4.4k / Y | 基于 UI 组件类别分类,且带精彩动画效果的 iOS 组件库集合。 |
Advance.swift | ★4.4k / Y | 简单易用、功能强大的动画框架库。在手势交互、帧动画、自定义动画及仿真类型将是不错的选择。 |
Advance | ★4.4k / Y | 一个强大的 iOS 动画库。 |
AnimatedCollectionViewLayout | ★3.9k | 一个 UICollectionViewLayout 子类,可将自定义过渡效果/动画添加到 UICollectionView。 |
XHLaunchAd | ★3.3k | XHLaunchAd开机启动广告解决方案-支持静态/动态图片广告,mp4视频广告,全屏/半屏广告、兼容iPhone/iPad. |
Pastel | ★3.2k / Y | 类似于 Instagram 的渐变动画效果。 |
JHChainableAnimations | ★3.2k / Y | 一套链式语法的 Objective-C 动画库,和Masonry类似,对核心动画进行了封装,链式动画,强烈推荐。 |
Spruce iOS Animation Library | ★2.9k / Y | 一个 Swift 库,用于在屏幕上编排动画。 |
Gemini | ★2.8k / Y | Gemini 具有丰富滚动效果的动画框架,基于 Swift。 |
EasyAnimation | ★2.8k / Y | 一个 Swift 动画库,将 UIView.animateWithDuration() 的能力提升到一个全新的水平, 主要包括该图层,弹簧效果,动画层的链接,以及将视图和图层混合的的能力。 |
Animations | ★2.8k | The Animation Collection. |
Stellar | ★2.8k / Y | 一套不错的物理动画库,基于 swift. |
15DaysofAnimationsinSwift | ★2.5k / Y | 15DaysofAnimationsinSwift动画。 |
TKSubmitTransition | ★2.2k | 基于 UIButton 的登录加载、返回按钮转场动画组件及示例. |
TABAnimated | ★2.1k | 一个由iOS原生组件映射出骨架屏的框架,包含快速植入,低耦合,兼容复杂视图等特点,提供国内主流骨架屏动画的加载方案,同时支持自定制动画. |
PeekPop.swift | ★2k / Y | 3DTouch动画组件。 |
FillableLoaders | ★2k | 基于 CGPaths 可定制个性化填空式装载类库。附水波上涨式示例. |
ZLSwipeableViewSwift | ★1.9k / Y | ZLSwipeableView - ZLSwipeableViewSwift在Tinder and Potluck中的动画效果实现思路(连续卡片翻页效果),最贴心的是作者提供了OC和Swift两个版本来供开发者使用,非常丝滑顺畅的效果。 |
YapAnimator | ★1.9k / Y | 一个快速优化的基于物理的动画库。 |
ZLSwipeableViewSwift | ★1.9k / Y | swift 卡片堆叠效果的实现(ZLSwipeableView)】可实现类似Tinder和Potluck应用程序的卡片堆叠效果,该项目基于ZLSwipeableView objective-c实现。1.自定义动画。2.自定义滑动切换。3.自定义方向。4.撤销。 |
RZTransitions | ★1.9k | iOS View Controller 过场动画库。 |
DKChainableAnimationKit | ★1.9k / Y | 一个使用链式语法的动画库,让动画编程更容易,基于 Swift。 |
RZTransitions | ★1.9k | 一个可自定义 iOS View Controller 动画和交互的库。 |
PulsingHalo | ★1.8k | 一个用于创建脉冲动画的 iOS 组件。 |
CKWaveCollectionViewTransition | ★1.8k / Y | 一个在多个 UICollectionView 之间实现玻浪切换效果的的工具。 |
awesome-animation | ★1.7k | 动效库. |
Interpolate | ★1.7k / Y | 通过手势驱动的插画动效,基于 Swift。 |
MotionBlur | ★1.5k | MotionBlur 可以在 iOS 动画添加动态模糊效果。 |
LSAnimator | ★1.5k / Y | 一个易于读写的多链动画套件,适用于 Objective-C 和 Swift. |
SAConfettiView | ★1.4k | 一种五彩纸屑从天而降的动画库,有多种样式 |
KYAnimatedPageControl | ★1.3k | 除了滚动视图时PageControl会以动画的形式一起移动,点击目标页还可快速定位。支持两种样式:粘性小球和旋转方块。 |
AFViewShaker | ★1.2k | 左右震动 |
SXWaveAnimate | ★1.2k | 实现非常美观的灌水动画. |
Ease | ★1.2k / Y | 轻轻松松实现所有动画。 |
AGGeometryKit | ★1.2k | 几何图形框架,把AGGeometryKit和POP结合起来使用,可实现非常棒的动态和动画. |
fave-button | ★1.2k / Y | 给button增加了很多可爱的动画. |
Pulsator | ★1.2k / Y | iOS 脉冲动画。 |
MMTweenAnimation | ★1.1k | 一个基于 POP 的扩展,提供了 10 种自定义的动效. |
MMTweenAnimation | ★1.1k | facebook POP的自定义动画扩展(基于POPCustomAnimation) 提供10种函数式动画. |
LoadingShimmer | ★1.1k / Y | 只需一行代码就可以为任何视图添加闪烁效果,可以用在加载指示器上。 |
Popsicle | ★1.1k / Y | 可扩展的 Swift 插入式画框架。 |
AnimationEngine | ★1.1k | 可以在 iOS 上构建高级的自定义动画, |
LayerPlayer | ★1.1k | 一款全面展示核心动画 API 示例项目(上架应用)。包括 CALayer, CAScrollLayer, CATextLayer, AVPlayerLayer, CAGradientLayer, CAReplicatorLayer, CATiledLayer, CAShapeLayer, CAEAGLLayer, CATransformLayer, CAEmitterLayer 等使用的互动演示. |
TweenKit | ★996 / Y | 一套 iOS 动画库,基于 Swift。 |
KYCuteView | ★986 | 实现类似QQ消息拖拽消失的交互+GameCenter的浮动小球效果,分析. |
Sica | ★942 / Y | Core Animation 的简单接口, 可以逐次并行运行的类型安全的动画库。 |
DCAnimationKit | ★788 | 一个iOS动画库,简单易用,包括 Tada,脉冲,震动。。等十几种动画夏鸥讴歌 |
ZoomTransitioning | ★668 | 一个可以自定义图片缩放的动画库 |
GoogleNewsStandAnimation | ★659 / Y | It is same like Google News Stand Animation with Customise Configuration file in Swift iOS Technology. |
Dance | ★653 | 一个iOS上优雅的动画库。 |
JDAnimationKit | ★616 / Y | 一个基于Swift的动画库,旨在减少代码量。 |
Cheetah | ★598 | 一个简单易用的 iOS 动效库。 |
AHKBendableView | ★595 | UIView 的一个子类,可以让视图边缘弯曲。 |
FlightAnimator | ★584 / Y | 一套先进的自然运动动画库, 有基于 block 的简单语法。 |
ARAnimation | ★577 | ARAnimation 对 Core Animation 进行了封装, 帮助 iOS 开发者能更加便捷的在项目中使用动画. |
BCMagicTransition | ★556 | 一个动效框架,用于自定义UINavigationController的切换动画,效果类似 Keynote 软件中 Magic Move 切换。它可以用于任意两个UIViewController之间,只需指定两个VC中的相同元素即可. |
Twinkle | ★548 / Y | 可以让元素闪烁的简单方式,基于 Swift,面向 iOS 和 tvOS 。 |
GiftCard-iOS | ★545 | 礼品卡购买的炫酷动画. |
GiftCard-Implementation | ★545 | 购买的炫酷动画. |
JSDownloadView | ★533 | 精巧顺滑的下载动画. |
KYWaterWaveView | ★507 | 一个内置波浪动画的UIView,里面有鱼跳跃水溅起来的效果. |
Anima | ★502 / Y | Anima 是一个具有链式语法的基于层的动画库,适用于 Swift4. |
UIView-Shake | ★499 | 为 UIView 相关组件添加震动动画效果。 |
YetAnotherAnimationLibrary | ★481 | 专为手势驱动的动画而设计,快速简单,可扩展。 |
anim | ★477 | 一套可定制,易用的动画库,API 很简洁,适用于 iOS, tvOS 和 macOS. |
UIViewXXYBoom.swift | ★450 / Y | 一个炫酷好玩的爆炸效果,如何实现这个效果。 |
ZFCityGuides | ★426 | 实现City Guides的动画效果,数字动态变化的动画效果. |
SIFloatingCollection_Swift | ★420 / Y | 可定制的 Apple Music 风格浮动形状动画组件及演示。 |
TYWaterWaveView | ★403 | 水波纹效果 |
WaterDrops | ★388 / Y | 一个简单的下雨、降雪的动画库,基于Swift。 |
HYAwesomeTransition | ★370 | 模仿格瓦拉的转场效果. |
MotionMachine | ★370 / Y | 一个强大,优雅,模块化的动画库,基于 Swift。 |
Water | ★369 | 通过简单计算就能实现水波纹效果。 |
BuildAnInfiniteCarousel | ★354 / Y | 自己动手造无限循环图片轮播,教程。 |
WXWaveView | ★349 | 可以为视图添加漂亮的波浪效果。 |
PMTween | ★345 | 一个优雅而灵活的补间动画库,适用于iOS。 |
DeformationButton | ★333 | 一个简单的变换形状动画按钮. |
PPDragDropBadgeView | ★320 | 实现了类似于QQ 5.0 水滴拖拽效果. 支持iOS 5.0+ ARC,气泡能够带有数字标识,同时支持消失block方法。消失时还带有消失效果动画。 |
RippleEffectView | ★313 | RippleEffectView - 一个简洁的涟漪视图效果。 |
Fluent | ★305 / Y | 让 Swift 动画变得更容易。 |
KDIntroView | ★295 / Y | swift 动态介绍视图框架及演示。另外两个相似的类库是 RazzleDazzle和 Presentation,择需使用。 |
STLBGVideo | ★291 | STLBGVideo让您的视图控制器的自定义backgroundvideo,实现说明1、实现说明2. |
LLCycleScrollView | ★284 / Y | iOS图片轮播(图片循环播放), 支持文本图片结合,支持图片数据的延时加载,支持StoryBoard,支持本地图片显示及与网络图的混合显示 |
JGTransitionCollectionView | ★268 / Y | swift,基于集合视图扩展实现完成自动布局及单元项 Flip式动画效果(效果很赞)。组件使用方便、自然(只需设置集合视图数据源的标准方式即可)。 |
fireworks | ★265 | 针对 UIView 的烟花效果。 |
SamuraiTransition | ★263 / Y | 一组为 ViewController 提供多度和"剪切"效果的动画库,基于 Swift。 |
Animo | ★262 | 基于 CALayers 类似于 SpriteKit 的动画构建器。 |
JRMFloatingAnimation | ★219 | 一个用于创建浮动图片视图的 Objective-C 动画库。 |
astrology-motion-ios | ★209 / Y | Astrology animation written in Swift 3 |
Bubble | ★207 | 水果气泡效果。 |
KYPingTransition | ★204 | 实现圆圈放大放小的转场动画,可以根据自己的需要使用Paper中的弹性效果,有Material风格. |
TheAnimation | ★203 / Y | 一个 CAAnimation 类型安全的封装, 可以防止设置错的类型值。 |
HamburgerButton.swift | ★198 / Y | HamburgerButton.swift一个汉堡包动画返回按钮。 |
WZXJianShuPopDemo | ★194 | 仿简书、淘宝等等的View弹出效果,已封装好,使用简单。实现原理 |
SwiftyAnimate | ★193 / Y | 一套可组合的动画库基于 Swift. |
INPopoverController | ★193 | OS X可自由定制的 Popover 视图. |
Pop By Example | ★183 | 一个关于如何使用 Pop 动画库的教程项目。 |
CCMRadarView | ★182 | CCMRadarView 可以通过 IBDesignable 用简单的方式就可以自定义带动画的雷达视图。 |
FleaMarket | ★168 / Y | "咸鱼"新特性-视频动画. |
AGInterfaceInteraction | ★155 | 可以和 UI 组件进行交互实现动画的库,可以基于当前UI创建动画效果,可以将当前UI上文字、图片等都转换成动画元素。 |
RYCuteView | ★152 / Y | 用UIBezierPath实现果冻效果。 教程 |
Walker | ★149 | 一个新的动画引擎。 |
Wobbly | ★144 | Wobbly 是一个支持预定义的、易于使用的iOS动画库。 |
MotionAnimation | ★141 | 针对 UIKit 的轻量级动画库。 |
KYBezierBounceView | ★136 | 手势控制贝塞尔曲线,取消手势贝塞尔曲线会有反弹效果. |
CardsAnimationDemo | ★133 / Y | swift, 《使用 UICollectionView 实现的一个卡片动画》不是直接操作所有 UIView 和 CALayer 的 transform3D 属性来实现整个效果的,而是使用 UICollectionView 来完成所有的视图管理和实现。 |
ADPuzzleAnimation | ★124 | 一套针对 UIView 自定义动画库,主要受到 Fabric 的启发。 |
CurryFire | ★122 | 一个用于创建独特动画的框架。 |
AKVideoImageView | ★120 | 一个 UIImageView 子类,可让您将循环播放的视频显示为背景。 |
Wave | ★113 / Y | 声明式的链式编程动画库,基于 Swift |
TKDotSegment.swift | ★106 / Y | 是一个带有圆点动画的 segment。 |
Morgan | ★96 | 一套动画库,有十几种动画效果,使用方式很简单。 |
KYShareMenu | ★90 / Y | 带弹性动画的分享菜单. |
UnReadBubbleView | ★81 | UnReadBubbleView是一个能够拖拽并拉长的气泡视图。拖拽到一定的长度会消失,可以通过系数设置来控制拖拽的长度。气泡也支持多种属性设置。 |
CPInfiniteBanner | ★72 | 是一个循环播放的组件,可以左右无缝滑动,3个imageview实现。高效图片轮播,两个ImageView实现. |
GridPanelDemo | ★72 / Y | 赞,一个点击翻转的动画Demo |
PearlSaver | ★68 | Face ID detection animation as a screensaver. |
Disintegrate | ★61 | 类似于《复仇者:无限战争》结尾所做的分裂小时(灭霸打响指之后的效果)效果的动画,很炫酷。 |
RadialLayer | ★60 | 针对可点击元素的动画(类似于 Youtube Music) |
DLWBouncyView | ★55 | BouncyView 是一个为所有视图都实现了最近流行的弹性效果的框架。 |
Ubergang | ★54 / Y | 一个用 Swift 编写的 iOS 补间动画引擎。 |
Poi | ★51 / Y | Poi 使您像 tinder UI 一样使用 卡片 UI ,你也可以使用类似于 tableview 的方法。 |
HWAnimationTransition_Swift | ★36 / Y | 、HWAnimationTransition_OC - 类似于格瓦拉启动页中的放大转场动画(objective-C && Swift)。教程 |
KIPageView | ★34 | 无限循环PageView,横向TableView,无限轮播. |
Kinieta | ★33 / Y | 可自定义的 Bezier Easing 效果的动画引擎,API直观,完美的色彩插值功能。 |
DaisyChain | ★29 | DaisyChain 是一个微框架,它使得 UIView 动画链接非常简单。 |
CircularRevealKit | ★21 | 类似于 material design 效果的 UI 库, 让循环显示动画变得容易。 |
KYNewtonCradleAnimiation | ★21 | 牛顿摆动画. |
XTLoopScroll | ★21 | 用两个 timer 三个重用的 view 实现无限循环 scrollView,1自动轮播 2点击监听回调当前图片 3手动滑动后重新计算轮播的开始时间, 良好的用户体验. |
VariousViewsEffects | ★18 | 一个易于使用的扩展,可以很好地对视图进行动画处理。 |
MagicMove | ★15 | 一个类似于 Keynote Magic 的切换效果. |
DGWaveLoadingTool | ★6 | 实现的功能类似于百度贴吧的波浪动画. |
VJDeviceSpecificMedia | ★6 | 如何根据设备选择不同尺寸的图片 可以通过设置不同尺寸设备的LaunchImage,来使得App适配这些设备,要是在不同不同尺寸设备上使用不同大小的图片,则需要在代码中一一判断,然后加载. |
SYAppStart | App启动插画的自定义过度. | |
SequenRotateAnimation | 一个简单的loading次序动画。 | |
AIAnimationDemo | 非常不错的一个各种动画Demo集合库 |
|
ZQLRotateMenu | 这是一个旋转视图的选择器. | |
HotGirls | 卡片动画. | |
TaskSwitcherDemon | 是仿造iOS9的Task Switcher做出来的动画效果, 具体的实现思路可参照这篇文章。 | |
LSPaomaView | 可循环滚动的较长文字,跑马灯,效果很好,一句话集成. | |
CoolLoadAniamtion | 一个简单但是效果不错的loading动画. |
动画相关其他资源
地址 | Stars/Siwft | 简介 |
---|---|---|
awesome-ios-animation | ★4.7k | 收集整理了下iOS平台下比较主流炫酷的动画框架,有截图和效果预览。 |
awesome-ios-animation | ★4.4k | 另一个 iOS 动画特效库列表,收录的内容相对较少。 |
Awesome iOS Animation | ★886 | 又双叒叕一个 iOS 动效资源列表,也有效预览。 |
过度/切换/转场效果
地址 | Stars/Siwft | 简介 |
---|---|---|
Hero | ★18.5k / Y | 适用于iOS的高效的过渡效果引擎,完全无需代码即可构建自定义视图过渡效果,主要是受到 Keynote's Magic Move 的启发. |
Hero | ★18.5k / Y | 非常的转场动画库. |
VCTransitionsLibrary | ★4.5k | 一个转场动画库,跟着源码能学习到很多 |
BubbleTransition | ★3k / Y | 一个自定义的模态过渡,用于呈现/消除具有气泡效果的扩展控制器。 |
AnimatedTransitionGallery | ★2.5k | 基于 UIViewControllerAnimatedTransitioning 协议的 iOS 7 自定义动画转换效果集合。 |
ZFDragableModalTransition | ★2.5k | 自定义的动画过度效果,用来呈现模态视图控制器。 |
Transition | ★2.3k / Y | 一个易于交互的可中断自定义 ViewController 过渡效果库。 |
WobbleView | ★2.2k | 是一个实现了流行的摇晃效果的视图。你可以在应用中方便的添加动态的用户交互和过渡效果。 |
SPStorkController | ★2.2k / Y | 非常像 Apple Music, Podcasts 和 Mail 应用中的 controllers 显示效果。 |
DeckTransition | ★2.2k / Y | DeckTransition 用于重现 iOS 10 中 Apple Music 和 iMessage 中的卡片过度效果。 |
ElasticTransition | ★2.1k / Y | 一个基于 UIKit 可自定义的效果库,可以模拟弹性拖拽效果,基于 Swift。 |
TransitionTreasury | ★2.1k / Y | viewController 的切换效果扩展,基于 Swift,让动画实现更简单。 |
UniversalProject | ★1.9k | 基于MVC架构的iOS轻量级框架,封装了基类、基于猿题库YTKNetwork的网络服务、工具库,NavigationController转场动画/瀑布流/粒子动画/小demo,已适配iOS11 & iPhone X. |
RMPZoomTransitionAnimator | ★1.7k | 基于 UIViewController 的自定义缩放过渡动画效果。 |
Motion | ★1.6k / Y | Swift实现的无缝动画和过渡。 |
WXSTransition | ★1.4k | 转场动画集合. |
TBIconTransitionKit | ★1.3k | 点击按钮过渡动画,很赞 |
JTMaterialTransition | ★966 | 基于 material design 的 iOS 控制器过度效果库。 |
BlurryModalSegue | ★935 | 可以提供模糊叠加效果。 |
ZOZolaZoomTransition | ★917 | 一个缩放过渡效果库,可对整个视图层次进行动画处理,可以参考 Zola 这个应用。 |
VVBlurPresentation | ★914 | 很简单易用的在原来viewconntroller基础上做模糊,然后present新的viewcontroller的. |
Blurable.swift | ★904 / Y | swift模糊组件。 |
Gagat | ★878 | 一个可以在 iOS 视觉样式之前进行过度切换的简便方式。 |
View2ViewTransition | ★861 | 一个在视图之前进行切换过度的自定义交互式视图控制器 |
TransitionableTab | ★698 | TransitionableTab 让 tab 之间的切换更加简单,当然是动效的哦。 |
DAExpandAnimation | ★579 | 以自定义的模态过渡效果,从 cell 中展开来呈现控制器的库。 |
AlertTransition | ★553 | AlertTransition 是一个视图控制器动效的扩展库,主要用在告警框的效果。 |
SABlurImageView | ★530 | 支持渐变动画效果的图像模糊化类库。P.S. 与前几天推存类库 SAHistoryNavigationViewController 是同一位作者. |
Kaeru | ★490 | 类似于 iOS 任务管理其中的 Switch 控件。 |
PresenterKit | ★481 / Y | 一个高效的视图控制器呈现框架, 基于Swift。 |
AZTransitions | ★413 | 一套使用一个方法就可以实现高级自定义过度效果的 API。 |
ElasticTransition-ObjC | ★400 | 一个基于 UIKit 可自定义的效果库,可以模拟弹性拖拽效果,基于 Objective-C。 |
CATransitionDemo | ★374 | 切换页面特效 |
UICustomActionSheet | ★373 | 通过模糊背景来着重强调与菜单相关的元素--对话框 里面已经收藏. |
KLParallaxView | ★293 | 一个有动态效果的view |
BetweenKit | ★265 | 一个健壮的 iOS 拖拽框架。 |
AppstoreTransition | ★247 | 模拟 appstore 中的卡片动效。 |
LiquidTransition | ★207 | 一种执行动画过渡的新方法,删除样板代码执行转换,允许反向动画,自定义属性动画等等。。。 |
ImageTransition | ★180 / Y | ImageTransition 用于在动效切换之间对图片进行平滑过度处理。 |
RPModalGestureTransition | ★90 | 您可以使用手势关闭模态效果。 |
SemiModalViewController | ★63 | 将 视图/视图控制器 显示为半屏模态框,真的只占用屏幕的一半哦。 |
Presenter | ★13 | 使用简洁的代码进行屏幕过度。 |
QQPersonalInfoTransition | 仿照QQ的转场。 |
隐藏与显示
- SlideTapBar - 滚动栏菜单,向上滚动时隐藏tabbar,向下滚动马上显示tabbar.
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
HYNavBarHidden | ★352 | 导航条滚动透明,超简单好用的监听滚动,导航条渐隐的UI效果实现. |
JXT_iOS_Demos | ★340 | AboutNavigationBar:一些关于navigationBar的非常规的但是较为实用的操作,包括利用毛玻璃、动态透明、动态隐藏,以及头视图的动态缩放,并同时涉及了statusBar的动态设置(换色)。教程. |
NavigationBarScaleViewDemo | ★34 | iOS导航条自由缩放头像效果。原理剖析. |
颜色
iOS 原生颜色组件
颜色 相关开源框架、工具
- 十六进制颜色扩展、主题、颜色选择器和其他出色的颜色工具 *
地址 | Stars/Siwft | 简介 |
---|---|---|
Chameleon | ★12.4k / Y | 一个 iOS 性能强大的轻量级扁平化颜色框架,我们还可以通过它运用自定义颜色创建调色板,可以用于 Objective-C 和 Swift。 |
DKNightVersion | ★3.5k | 管理颜色,整合夜间/多主题 等功能。 |
Colours | ★3.1k | 一组漂亮的预定义颜色和一组颜色方法,使您的iOS/macOS开发更加轻松 |
Hue.Swift | ★3.1k / Y | Hue.Swift:颜色常规功能集于一身的定义、使用 Color 工具类库(含图片取色). |
Hue | ★3.1k / Y | Hue 是一个综合的颜色工具,功能很多。 |
DynamicColor | ★2.3k / Y | 一个用于操作颜色的扩展,基于 Swift. |
KtColor.swift | ★2k / Y | 利用 Swift 的语法特性简化创建 UIColor对象的过程。具体文章可以参考博客:当UIColor遇上 Swift. |
UIColor-Hex-Swift | ★1k / Y | 使用RGBA十六进制字符串创建自动释放颜色的方便方法。 |
SwiftHEXColors | ★618 / Y | 十六进制颜色处理,作为UIColor的扩展. |
RandomColorSwift | ★508 / Y | 一个不错的颜色生成器,基于Swift. 从 randomColor.js 移植过来的. |
BCColor | ★421 / Y | 轻巧但功能强大的配色套件(Swift) |
ChromaColorPicker | ★363 / Y | 内置于Swift中的直观iOS颜色选择器。 |
Gestalt | ★311 | 一款轻巧的iOS应用主题库,支持动画主题切换。 |
CostumeKit | ★302 / Y | 主题化应用程序的基本类型。 |
FlatUIColors | ★172 / Y | 扁平化 UI 风格的调色板,基于 Swift. |
PrettyColors | ★165 / Y | PrettyColors是一个Swift库,用于在终端中为文本设置样式和颜色。 |
ColorArt | ★136 | 从图片中取出主要颜色,类似 iTunes 11 的效果。 |
CSS3ColorsSwift | ★62 / Y | 具有CSS3颜色名称的UIColor扩展。 |
SheetyColors | ★58 / Y | 动作表样式的iOS颜色选择器。 |
Lorikeet | ★26 / Y | 一个轻量级的Swift框架,用于产生美观的色彩方案和CIE色差计算。 |
PFColorHash | ★23 | 根据给定的字符串生成颜色。 |
TFTColor | ★18 / Y | RGB和CMYK十六进制字符串和十六进制值(ObjC和Swift)的简单扩展。 |
SDevFlatColors | / Y | Swift 实现的扁平化颜色。 |
字体/图标
相关教程
相关框架
地址 | Stars/Siwft | 简介 |
---|---|---|
FontAwesomeKit | ★2.8k / Y | iOS 的图标字体库。目前支持 Font-Awesome,Foundation图标,Zocial 和 ionicons。 |
ios-fontawesome | ★1.8k | NSString + FontAwesome. |
Iconic | ★1.5k | 自动生成的图标字体库,用于 iOS,watchOS 和 tvOS 。 |
FontAwesome.swift | ★1.4k / Y | 在 Swift 项目中中使用 FontAwesome。 |
UIFontComplete | ★1.2k / Y | iOS 和 tvOS 上的字体管理器 (系统 及 自动以) 。 |
SDevIconFonts | ★1.1k / Y | 用于 Swift 的 Fontawesome, Iconic, Ionicons, Octicon。 |
SwiftIconFont | ★1.1k / Y | 用于 iOS 的 Icons 字体 (如,FontAwesome, Iconic, Ionicon, Octicon, Themify, MapIcon, MaterialIcon). |
FontBlaster | ★969 / Y | 可以以编程方式将自定义字体加载到您的iOS应用中。 |
Money | ★760 / Y | 一种精确的、类型安全的以给定货币表示方式。 |
Font-Awesome-Swift | ★740 / Y | iOS 上的对应 Font Awesome 的 swift 库。 |
SwiftIcons | ★709 / Y | 一个可以使用多种字体图标的库,如: dripicons, emoji, font awesome, icofont, ionicons, linear icons, map icons, material icons, open iconic, state, weather. 支持 UIImage, UIImageView, UILabel, UIButton, UISegmentedControl, UITabBarItem, UISlider, UIBarButtonItem, UIViewController, UITextfield, UIStepper 等组件。 |
xkcd-font | ★638 | The xkcd font. |
GoogleMaterialDesignIcons | ★368 | 适用于 iOS 的 Google Material Design 图标字体。 |
IoniconsKit | ★309 / Y | 和OcticonsKit 类似,这个库是 Ionicons 用作 UIImage / UIFont。 |
FontAwesomeKit.Swift | ★195 / Y | 在 iOS 上使用 FontAwesome 的一种更好的方法。 |
GoogleMaterialIconFont | ★147 / Y | 适用于 Swift 和 ObjC 项目的Google Material Design图标。 |
SwiftFontName | ★112 / Y | 操作系统字体补充库,支持本地化字体。 |
AwesomeEnum | ★54 / Y | 面向 Swift 4 的,基于 Font Awesome 5 的组件库,可以用在 iOS,macOS,tvOS,wathcOS上。 |
Swicon | ★37 / Y | 让你的 Swift/iOS 项目中可以使用 FontAwesome 和 Google Material Icons 中超过1600+ 个图表,且使用简单又节省空间。 |
OcticonsKit | ★35 / Y | 使用 Swift 的方式 将 Octicons图标库用作 UIImage / UIFont |
JQSwiftIcon | ★5 / Y | 一个iOS上的使用Swift编写的字符串插值的图标字体。 |
前台工具
- iOS Fonts - 查询 iOS 各版本字体
手势
手势相关教程
手势相关开源工具
- 一些处理手势的框架和工具 *
地址 | Stars/Siwft | 简介 |
---|---|---|
FDFullscreenPopGesture | ★5.7k | UINavigationController的一个类别,用于使用AOP启用iOS7+系统样式的全屏弹出手势,可以方便的集成全屏返回上一层界面 |
DBPathRecognizer | ★1.2k | 手势识别器工具。 |
Tactile | ★693 | iOS 处理手势更好的方法,安全并且更加合乎习惯的响应收拾和控件事件的方式。 |
Sensitive | ★547 | 在iOS中使用手势的特殊方式。 |
SplitViewDragAndDrop | ★311 | 轻松添加拖放操作,以拆分视图模式,用来在应用之间传递数据。 |
SwiftyGestureRecognition | ★152 / Y | 在Xcode Playgrounds中使用UIGestureRecognizers制作原型的辅助工具。 |
本土化工具
相关教程
拼音工具
地址 | Stars/Siwft | 简介 |
---|---|---|
PinYin4Objc | ★843 | 拼音解析,很好用, 基于 Object-C |
其他开源工具
用于管理字符串文件,翻译和启用应用程序中的本地化工具.
地址 | Stars/Siwft | 简介 |
---|---|---|
Localize-Swift | ★2.5k / Y | Swift 2.0 友好的本地化和 i18n(国际化)(具有应用内语言切换功能)框架。 |
LocalizationKit | ★1.2k / Y | 通过Web门户实时进行本地化管理,无需重新部署和重新提交即可轻松管理您的文本和翻译。 |
BartyCrouch | ★882 / Y | 从代码和 Storyboards/XIB 增量更新/翻译您的Strings文件。 |
Swifternalization | ★569 / Y | 使用 JSON 文件,以更智能的方式本地化 iOS 应用,基于Swift. |
Hodor | ★543 | 本地化iOS应用的简单解决方案。 |
IBLocalizable | ★461 / Y | 使用 IBLocalizable 直接在界面生成器中本地化视图。 |
Localize | ★224 / Y | 使用JSON或字符串本地化应用程序的简单工具,当然还有带有UI组件扩展的 IBDesignables。 |
Strsync | ★155 | 从基本语言自动翻译和同步.strings 文件。 |
nslocalizer | ★149 | 查找丢失和未使用的 NSLocalizedStrings 的工具。 |
L10n-swift | ★143 / Y | 能够“即时”更改语言并支持任何语言中的复数形式 |
Rubustrings | ★103 | 检查 Localizable.strings 文件的格式和一致性。 |
transai | ★57 | 命令行工具可帮助您管理本地化字符串文件。 |
CrowdinSDK | ★22 / Y | Crowdin iOS SDK 可以将所有新的翻译从 Crowdin 项目传递到应用程序。 |
LocalizedView | ★8 | 在Xib文件中设置应用程序特定的本地化字符串。 |
通知/推送/消息/IM
即时通信/IM
IM 服务商
- 环信 - 给开发者更稳定IM云功能。8200万用户考验,好用!(暂无及时语音、视频通话).
- 融云 - 即时通讯云服务提供商。(暂无及时语音、视频通话).
- 容联云通讯 - 提供基于互联网通话,视频会议,呼叫中心/IVR,IM等通讯服务.
IM 开源框架/SDK
- BlueTalk蓝牙聊天 - 以MultipeerConnectivity为基础, 实现了简单的蓝牙聊天.
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
TeamTalk | ★6.1k | TeamTalk is a solution for enterprise IM. |
Signal-iOS | ★4.8k | A private messenger for iOS. |
ChatSecure | ★2.9k | 基于XMPP的iphone、android加密式聊天软件, chatsecure官网 。 iOS代码1,iOS代码2, iOS中文版. |
MobileIMSDK | ★2.9k | 一个专为移动端开发的原创即时通讯框架,超轻量级、高度提炼,完全基于UDP协议,支持iOS、Android、标准Java平台,服务端基于Mina和Netty编写. |
Telegram | ★2.9k | Telegram Messenger for iOS. |
网易云信 iOS UI 组件 | ★1.2k | 云信 UI 组件,全称 Netease Instant Message Kit,简称 NIMKit,是一款开源的聊天组件,并支持二次开发。开发者只需要稍作配置就可以打造出属于自己的聊天界面,而通过一些自定义的设置,也可以轻松添加业务相关的功能,如阅后即焚,红包,点赞等功能。NIMKit 底层依赖 NIMSDK,是一款由网易开发的 IM SDK,通过它可以轻松快速在你的 App 中集成 IM 功能. |
QQ界面 | ★486 | |
jchat-swift | ★272 / Y | 一个聊天 App,具有完备的即时通讯功能,JChat 的功能基于极光 JMessage SDK 来开发。 |
RTCChatUI | ★120 | 仿QQ音视频通话效果. |
SXTheQQ | ★63 | 用xmppFramework框架编写QQ程序,主要为了练习通讯的一些原理,界面比较渣 必须要先在本地配置好环境才可以运行。 |
SunFlower | ★11 | 环信聊天demo,比较多功能. |
消息(包括短信)
消息推送服务商
国外消息服务商:
开源消息/通知框架
地址 | Stars/Siwft | 简介 |
---|---|---|
JSQMessagesViewController | ★11.3k | 优雅的 iOS 消息类库, 常用于聊天应用中, 可定制性高。 |
XMPPFramework | ★5.8k | 使用 Objective-C 实现的 XMPP 通信协议框架,适用于 Mac 和 iOS. |
MessageDisplayKit | ★4.3k | 用于聊天App显示消息的页面,可以发送文本、声音、图片、视频等消息(不过目前的Demo似乎仅支持输入文本)。界面模仿微信App。 |
MessageKit | ★4.2k / Y | JSQMessagesViewController 的 Swift 版本。 |
Chatto | ★4.1k / Y | 一个轻量级的,用户构建聊天功能的框架, 基于 Swift. |
Messenger | ★3.8k | 这是一个本机 iOS Messenger应用程序,支持完全脱机模式,可以进行实时聊天对话和音频呼叫。 |
CWStatusBarNotification | ★2k | 酷炫的通知栏,多种通知样式,使用简单。 |
MessageViewController | ★1.6k / Y | 一个用 Swift 编写的 SlackTextViewController 替代品,针对 iPhone X. |
chat-sdk-ios | ★762 | iOS 的聊天 SDK。 |
Lotusoot | ★313 / Y | 灵活的 Swift 组件解耦和通信工具. |
AsyncMessagesViewController | ★296 | 适用于iOS的平滑,响应迅速且灵活的消息UI库。 |
Messenger Chat with Firebase | ★286 / Y | 具有Firebase Firestore集成的Swift消息聊天应用程序。 |
SwiftyMessenger | ★45 / Y | 一套用于在iOS应用和扩展程序之间传递消息的Swift工具包。 |
Homeoff | ★28 / Y | 用swift写了一个模仿Launcher通知中心快捷方式的应用。支持20个应用,并增加了一个返回到桌面来解放Home键的功能。 |
SwiftKafka | ★25 / Y | IBM提供的 Apache Kafka的Swift SDK |
OTTextChatAccelerator | ★14 | OpenTok Text Chat Accelerator Pack 允许在移动设备和基于浏览器的设备之间传输消息。 |
Atlas-iOS | :为 Layer 设计的原生 iOS 消息应用 UI 组件。 |
Push 通知框架/消息推送
相关教程
相关框架
地址 | Stars/Siwft | 简介 |
---|---|---|
PEM | ★28.8k | 自动生成并更新推送通知配置文件。 |
NWPusher | ★5.7k | macOS和iOS应用程序和框架,可与Apple推送通知服务(APNs)一起使用。 |
terminal-notifier | ★5.3k | Send User Notifications on macOS from the command-line. |
Knuff | ★4.7k | Apple 推送通知服务(APNS)的调试程序。 |
JDStatusBarNotification | ★3.8k | 在状态栏顶部显示通知。可以自定义颜色字体以及动画。支持进度显示以及显示状态指示器. |
SmartPush | ★1.5k | SmartPush,一款iOS苹果远程推送测试程序,Mac OS下的APNS工具APP,iOS Push Notification Debug App |
SimulatorRemoteNotifications | ★1.4k | 一个向iOS模拟器发送模拟远程通知的库。 |
Orbiter | ★685 | 在 iOS 中注册推送通知。 |
FBNotifications | ★505 | Facebook 出的内置到应用中低端通知框架。 |
GLPubSub | ★247 | 一个简短实用的 NSNotificationCenter 的封装. |
JSQNotificationObserverKit | ★168 | 一款轻量、易用的通知发送及响应框架类库。作者是知名开源项目 JSQMessagesViewController(Objective-C 版即时聊天)的作者 Jesse Squires. |
obito | ★89 | an iOS notification service out of box. |
PushDemo | ★43 | 客户端消息接收消息代码,IOS开发之 ---- IOS8推送消息注册 , 分分钟搞定IOS远程消息推送。 |
APNSUtil | ★29 | 一个易于设置的库,可以登陆苹果推送通知服务。 |
消息推送服务端
- javapns源代码 - 消息推送的java服务端代码,注意:DeviceToken中间不能有空格。
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
pushMeBaby | ★945 | Mac端消息推送端代码,注意:DeviceToken中间要有空格。 |
消息推送提供商
国内消息推送服务商:
国外消息推送服务商:
- Urban Airship - 付费的推送通知后台
- Growth Push - 付费的推送通知,在日本很流行
- Braze
- Batch
- Boxcar
- Carnival
- Catapush
- Netmera
- OneSignal - 免费.
- PushBots
- Pushwoosh
- Pusher - 免费开源.
- Swrve
- Parse Push - 完全免费的后台推送通知,提供了创建分段,调度甚至 A/B 测试的能力。
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
Pushkin | ★244 | 免费开源 |
本地通知
相关教程
相关框架
地址 | Stars/Siwft | 简介 |
---|---|---|
DLLocalNotifications | ★161 | 快速创建本地通知,基于 UserNotifications 的封装。 |
网络
iOS 中网络相关教程、资讯
- 《iOS网络监测如何区分2、3、4G》
- 《iOS网络篇-网络基础》
- 《iOS网络深度优化总结》 - 有一些弱网环境优化的资料。
- 《iOS-网络编程基础》
- 《浅谈Swift网络编程最佳实践》
Swift 中内置的网络功能
- 《URLSession基本使用》 - 基于 Swift
- Swift - 使用URLSession同步获取数据(通过添加信号量)
- 《Swift网络开发之NSURLSession学习笔记》
- 《Swift:URLSession 的GET和POST》
- Swift: Post JSON 数据的一段代码
- 《Swift3.0:NSURLConnection的使用》
- URL Loading System (英)
- Legacy URL Loading Systems(英)
网络请求/下载
- sync-http.swift - 一段用于同步执行 URLSession 请求的代码
- Siesta - RESTful 资源的优雅抽象, 基于回调和基于委托的网络的替代方法。
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
Alamofire | ★33.6k / Y | Alamofire 是一个 HTTP 网络库,基于 Swift, 由 AFNetworking 的作者编写。你是否曾经使用过AFNetworking呢?Alamofire是它的小弟。更年轻更时尚,当然(AFNetworking是用Objective-C编写的) |
AFNetworking | ★32.8k | 一个好用的 iOS/macOS 网络框架,应用很广,基于 Objective-C。 |
Moya | ★12.1k / Y | 一个基于 Swift 的网络抽象层,Moya 是对 Alamofire 的再次封装 |
CocoaAsyncSocket | ★11.6k | 适用于Mac和iOS的异步套接字网络库,无疑是目前封装得最完善的Socket库了:支持异步TCP/UDP,支持GCD,Objective-C接口封装。。目前没有发现可以与之相比的同类产品。 |
RestKit | ★10.3k | 主要用于 iOS 上网络通信, 允许与 RESTful Web 服务交互, 常用于处理 API, 解析 JSON, 映射响应对象等操作, 简单易用, 方便你把所有精力都放在对数据的操作上 |
Reachability.swift | ★6.8k / Y | Apple Reachability 的替代,用 Swift 和闭包重新实现了苹果的 Reachablility 框架。 |
YTKNetwork | ★6.1k | YTKNetwork 是基于AFNetworking的高级请求工具类 |
swift-nio | ★5.9k / Y | 苹果开源的一个事件驱动的非阻塞的网络框架,用来写高性能网络应用. |
ASIHTTPRequest | ★5.8k | 易于使用的CFNetwork封装,可用于HTTP请求,基于Objective-C,适用于 macOS 和 iPhone。 |
RealReachability | ★2.9k | 用于检测网络的可达性。 |
MonkeyKing | ★2.5k | MonkeyKing 帮助开发者快速集成国内主流社交应用(微信、微博、QQ、支付宝)的分享、授权、支付等功能。重要的是,不需要集成各种官方 SDK |
Siesta | ★2k | 一个请求RESTful资源的优雅抽象,可解决有状态的混乱情况,是基于回调和基于委托的网络的替代方法。 |
ResponseDetective | ★1.9k / Y | 网络层的福尔摩斯。 |
SwiftHTTP | ★1.8k / Y | NSURLSession 的轻量级封装,简化了HTTP请求,基于 Swift。 |
APIKit | ★1.7k / Y | 一个网络库,用于在Swift中构建类型安全的Web API客户端。 |
PPNetworkHelper | ★1.6k | AFN3.x与YYCache的二次封装,一句话搞定网络请求与缓存,和FMDB说拜拜. |
Just | ★1.3k / Y | Swift HTTP 库,号称是给人看的语法. |
Just | ★1.3k / Y | 小而美的 HTTP 类。功能简单、直接、完整且健壮性高-- swift。 |
Networking | ★1.2k / Y | Swift中的简单HTTP网络库,支持带图像缓存的 NSURLSession 封装。 |
Hedwig | ★1.1k / Y | 提供了一组高级 API,可以让你轻松地发送电子邮件到SMTP服务器。如果你打算在下一个神奇的 Swift 服务器 app里发送 email,Hedwig 可能是一个好的选择. |
Overcoat | ★1.1k | 小巧但功能强大的网络库,使得创建 REST 客户端变得简单而有趣。 |
MZDownloadManager | ★1k | 下载管理。 |
XMNetworking | ★972 | 一个基于 AFNetworking 简化语法的的轻量级框架,但功能强大。 |
Pitaya | ★851 / Y | 一个使用 Swift 实现的 HTTP / HTTPS 网络库 |
EVCloudKitDao | ★607 / Y | 简化了对苹果 CloudKit 的访问。 |
SPTDataLoader | ★601 | Spotify iOS客户端使用的HTTP库。 |
agent | ★598 / Y | 一个适用于iOS和macOS的简约 Swift HTTP 请求代理。 |
HYBNetworking | ★577 | 基于AFN封装的网络库,可以通用。基于AFNetworking封装网络库说明目前已经提供了通用的GET/POST、上传、下载API等。 |
NSRails | ★523 | iOS/Mac OS 上的 Rails 框架,客户端的对象/类映射到远程 REST API 的对象/ORM。 |
Digger | ★509 | Digger是一个轻量级的下载框架,仅需要一行代码即可完成文件下载任务。 |
TRON | ★498 / Y | 轻量级网络抽象层,建立在 Alamofire 之上。 |
SOAPEngine | ★463 | 这是个通用SOAP客户端,允许您使用iOS,macOS和AppleTV应用访问Web服务。 |
Reach | ★449 / Y | 一个简单的类,用于检查Swift中的Internet连接可用性。 |
Transporter | ★443 / Y | 一个很小的库,它使上载和下载更加容易。 |
Bamboots | ★434 | Bamboots是基于Alamofire的网络请求框架,旨在使网络请求更易于开发. |
HappyDns | ★426 | 一个Dns库,支持自定义Dns服务器,dnspod httpdns。不过,只支持 A 记录 |
TWRDownloadManager | ★399 | 一种基于 NSURLSession 的现代下载管理器,用于处理多个文件的异步下载、管理和持久化。 |
FSNetworking | ★388 | 稳固 iOS 网络库 |
Restofire | ★375 / Y | Restofire 是迅速的面向协议的网络抽象层,它建立在 Alamofire 之上,以声明性的方式使用服务。 |
Swish | ★374 | Nothing but Net(working). |
MMLanScan | ★363 | 一个 iOS LAN局域网扫描库。 |
ws |
★347 / Y | Swift 中的优雅 JSON WebService。 |
WTRequestCenter | ★294 | 方便缓存的请求库,提供了方便的HTTP请求方法,传入请求url和参数,返回成功和失败的回调。 UIKit扩展提供了许多不错的方法,快速缓存图片,图片查看,缩放功能, 颜色创建,设备UUID,网页缓存,数据缓存等功能。 无需任何import和配置,目前实现了基础需求。 |
EVURLCache | ★284 / Y | NSURLCache子类,用于处理使用 NSURLRequest 的所有Web请求。 |
AFNetworking+RetryPolicy | ★192 | AFNetworking 的增强,基于 objective-c |
Reactor | ★188 | 增强 RAC 框架。 |
Reactor | ★188 | 增强 RAC 架构. |
AFNetworking-Synchronous | ★157 | 基于 AFNetworking 实现同步请求,适用于 AFNetworking 1.x, 2.x, 和 3.x,基于 Objective-C |
LxFTPRequest | ★140 | 支持获取FTP服务器资源列表,下载/上传文件,创建/销毁ftp服务器文件/目录,以及下载断点续传,下载/上传进度,自动判断地址格式合法性跟踪等功能!国人开发。 |
EFInternetIndicator | ★130 / Y | 基于 ReachabilitySwift 的快速互联网错误状态指示器。 |
Future | ★121 / Y | 基于微框架设计思想的异步执行及结果响应类,代码即简单又干净-- swift。 |
Netdiag | ★115 / Y | 一个网络诊断库,支持 Ping/TcpPing/Rtmp/TraceRoute/DNS/external IP/external DNS 等操作 |
NetClient | ★114 / Y | 用 Swift 3 编写的多功能HTTP网络库 |
HFDownLoad | ★111 / Y | iOS开发网络篇之文件下载、大文件下载、断点下载:NSData方式、NSURLConnection方式、NSURLSession下载方式 下载方式具体的思路、区别见Blog 。 |
FGRoute | ★92 | 一个易于使用的库,可帮助开发人员获取wifi ssid,路由器和设备ip地址。 |
SolarNetwork | ★91 / Y | Swift 中的优雅网络抽象层。 |
Bridge | ★91 | 一个简单的可扩展类型的网络库,可以轻松拦截和处理/更改请求和响应。 |
STNetTaskQueue | ★90 | STNetTaskQueue Objective-C 可扩展网络请求管理库。 |
Frisbee | ★88 / Y | Another network wrapper for URLSession. Built to be simple, small and easy to create tests at the network layer of your application. |
ReactiveAPI | ★71 / Y | 利用RxSwift的功能,依靠URLSession编写干净,简洁和声明性的网络代码。 主要受到 Retrofit 的启发. |
UnboxedAlamofire | ★66 / Y | Alamofire + Unbox: 下载并解析JSON,同时转换到Swift对象的最简单方法。 |
Squid | ★54 | 基于Combine的声明式和响应式网络框架,并提供HTTP请求,透明分页和WebSocket通信的方式。 |
Merhaba | ★52 | Bonjour网络,用于在iOS,macOS和tvOS之间进行设备发现和连接。 |
CDZPinger | ★49 | 易用的 ICMP Ping 工具库. |
ROADFramework | ★49 | 面向属性的 web 服务交互方式,该框架具有用于请求和响应的内置 json 和 xml 序列化功能,并且可以轻松扩展。 |
SwiftyZeroMQ | ★46 / Y | ZeroMQ Swift 类库,可用于 iOS, macOS, tvOS 以及 watchOS. |
SwiftNet.swift | ★37 / Y | 基于 RxSwift 和 Alamofire 的网络请求简易封装库。 |
Dots | ★33 / Y | 轻量级并发网络框架。 |
Ciao | ★32 / Y | 使用mDNS(Bonjour,Zeroconf)发布和发现服务。 |
DBNetworkStack | ★31 | 面向资源的网络框架,具有类型安全性,可扩展性,可组合性,并且使测试变得更加容易。 |
NetworkKit | ★30 | 一个适用于iOS,Mac,WatchOS和tvOS的轻量级网络和数据解析框架。 |
Downloader | ★29 | iOS downloader for app(基于NSURLSession的下载器,mp4/mp3等资源都可以使用,m3u8格式等)。 |
MutableUploadDemo | ★24 | 模拟需求:图文混编,要求用户选择图片后就上传,可选择多图,并行上传,用户确定提交后后台执行,必须全部图片上传完才能提交文字。 |
TermiNetwork | ★23 / Y | 用Swift 4.0编写的网络库,支持多环境配置,路由和自动反序列化。 |
Nikka | ★22 | 一个超级简单的网络包装器,支持许多JSON库,Futures和Rx |
SWNetworking | ★22 | iOS,macOS和tvOS上的强大、高级网络库。 |
Nikka | ★22 | 一个超级简单的网络层封装,支持很多 JSON 库, Futures 和 Rx. |
MHNetwork | ★18 | 面向协议的网络层旨在避免单例 NetworkManager 膨胀。 |
AlamoRecord | ★18 | 一个优雅而强大的iOS网络层,灵感来自 ActiveRecord。 |
AFNetworkingHelper | ★18 / Y | 在 RC 内部广泛使用的 AFNetworking 库之上的自定义包装器 |
NKMultipeer | ★14 | 一个建立在多个对等连接上的可测试的抽象库。 |
ThunderRequest | ★11 | 一个简单的URLSession包装器,具有基于通用协议的请求主体方法和容易的反序列化响应。 |
WANetworkRouting | ★10 | 一个iOS库,用于通过请求,映射,路由和身份验证层将API路径路由到客户端上的对象。 |
RxRestClient | ★9 / Y | 基于RxSwift和Alamofire的简单REST客户端。 |
RMHttp | ★8 | 用在 iOS 和 watchOS 上的轻量级REST库。 |
Gem | ★8 | 一个非常轻量级的系统,具有高性能,用于管理所有的http请求,并使用带有modal的自动解析器。 |
Malibu | ★8 / Y | Malibu是基于Promise建立的网络库。 |
SWNetworking | ★6 / Y | 强大的高级iOS,macOS和tvOS网络库。来自 SWNetworking 的作者。 |
Domainer | ★6 | 管理多域 url,并自动映射ip地址表. |
NetKit | ★4 / Y | Swift的简洁HTTP框架 |
OctopusKit | ★2 | 一个用于调用 RESTful Web 服务API的简单而优雅的解决方案。 |
QwikHttp | ★2 | 一个专为 RESTful API设计的功能强大,轻巧且易于使用的HTTP网络库 |
下载相关框架:
地址 | Stars/Siwft | 简介 |
---|---|---|
AFDownloadRequestOperation | ★1.1k | 封装了AFNetworking,带有下载进度 |
WHCNetWorkKit | ★464 | WHCNetWorkKit 是http网络请求开源库(支持GET/POST 文件上传 后台文件下载 UIButton UIImageView 控件设置网络图片 网络数据工具json/xml 转模型类对象网络状态监听). |
HSDownloadManager | ★320 | 下载音乐、视频、图片各种资源,支持多任务、断点下载. |
DGDownloadManager | ★40 | 下载的一个框架,支持断点续传、支持批量下载,支持ios和macOs,支持pod,可设置最大并发数量,可以暂停也可以恢复更可以取消. |
WebSocket/Socket
- Socket通信 - 通过AsyncSocket封装的Socket通讯方法,简单实用,通俗易懂,初学者不能错过.
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
SocketRocket | ★9k | 一个 Objective-C WebSocket 客户端。 |
Starscream | ★5.9k / Y | Websockets in swift for iOS and macOS. |
socket.io-client-swift | ★4.2k / Y | Socket.IO 客户端,针对 iOS/macOS. |
SwiftWebSocket | ★1.4k / Y | 一个基于 Swift 的高性能 WebSocket 客户端库,面向 iOS 和 macOS. |
SwiftSocket | ★1.3k / Y | 一个基于 Swift 的 socket 库。 |
Socks | ★563 / Y | 一个纯 Swift 实现的 Socket 库,支持 TCP, UDP; Client, Server; Linux, macOS. |
AsyncSocket | ★202 | Asynchronous socket networking library for Mac and iOS. |
Swift-ActionCableClient | ★153 / Y | ActionCable是一个新的 WebSocket服务器,它与Rails 5一起发布,使得向应用程序添加实时功能变得非常容易。 |
GCDAsyncSocket | ★72 | GCDAsyncSocket , 不错的Demo. |
SwifterSockets | ★57 / Y | 一组 socket 工具集合,基于 Swift。面向 iOS 和 macOS。 |
DNWebSocket | ★29 / Y | 面向对象的、Swift 风格的 WebSocket 库(RFC 6455),适用于 Swift 兼容平台。 |
Email/邮件
地址 | Stars/Siwft | 简介 |
---|---|---|
Mail Core 2 | ★2.2k | MailCore 2 提供了一个简单的异步API,用于IMAP,POP和SMTP等协议。 |
Postal | ★574 / Y | 一个提供对常见电子邮件提供商的简单访问的 Swift 框架 |
数据解析
CSV 解析
地址 | Stars/Siwft | 简介 |
---|---|---|
CSV.swift | ★447 / Y | 一个 CSV 的读写库,基于 Swift. |
SwiftCSV | ★437 / Y | Swift CSV 解析器 |
CSwiftV | ★153 / Y | 一个 csv 解析器,基于swift,符合 rfc4180 规范。 |
CodableCSV | ★112 / Y | 逐行读写CSV文件&逐行或通过Swift的可编码接口读写CSV文件。 |
JSON
iOS 自带的工具
- 《NSJSONSerialization 实现 JSON 序列化》 - 基于 Objective-C
- 《NSJSONSerialization的简单用法》 - 基于 Objective-C
- Swift-->Json解析(原生NSJSONSerialization) - 基于Swift
- Swift-使用NSJSONSerialization生成或解析JSON数据 - 基于Swift
- NSJSONSerialization 官方文档(英)
其他 JSON 框架
- jsoncafe.com - JSON的在线模板驱动的模型类生成器。
Github 资源:
地址 | Stars/Siwft | 简介 |
---|---|---|
JSONDecoder | ★51.8k / Y | Apple 官方推出的基于 Codable 的 JSON 解析类 |
SwiftyJSON | ★19.6k / Y | 在Swift中处理JSON数据的更好方法,比较受欢迎,但采用下标方式获取数据,有人使用起来可能觉得比较麻烦,还容易发生拼写错误、维护困难等问题。 |
Mantle | ★11.2k / Y | 作者是 GitHub 的员工, 文档写的很清楚: Mantle makes it easy to write a simple model layer for your Cocoa or Cocoa Touch application, 主要用来将 JSON 数据模型化为 Model 对象, 唱吧在前段时间也改用 Mantle 了。 |
ObjectMapper | ★8.5k / Y | 很赞 ObjectMapper 是一个基于 Swift 语言开发的能够让 JSON 与 Object 之间轻易转换的类库。通过 ObjectMapper 我们可以将 JSON 数据转换成 Model 对象或将 Model 对象转换成 JSON 数据。 |
ObjectMapper | ★8.5k / Y | 用Swift编写的框架,可以轻松地将Model对象(类和结构)与JSON相互转换,是面向协议的 Swift JSON 解析框架。 |
MJExtension | ★8.3k / Y | 实现 JSON 和模型之间的快速,便捷和非侵入式转换。 您的模型类不需要扩展另一个基类。 您无需修改任何模型文件。 |
JSONModel | ★6.8k | JSON的神奇数据建模框架。 创建快速强大,原子和智能的数据模型类。 |
JSONModel | ★6.8k | 解析服务器返回的Json数据的库,JSONModel源码解析一. |
JSONKit | ★6.2k | Objective-C JSON 工具。 |
JSONExport | ★4.3k | JSON export是一个用于macOS的桌面应用程序,它允许您将JSON对象导出为模型类,并使用您喜欢的语言将其与构造函数、实用程序方法、setter和getter关联起来。 |
YYModel | ★4.1k / Y | High performance model framework for iOS/OSX. |
SBJson | ★3.8k | 用 Objective-C 中实现了一个严格的JSON解析器和生成器框架。 |
JSON-Framework | ★3.8k | 这个框架用 Objective-C 实现了一个严格的 JSON 解释器和生成器。 |
HandyJSON | ★3.4k / Y | 一个方便的swift JSON对象序列化/反序列化库,阿里巴巴出品,有中文文档。 |
ParseSourceCodeStudy | ★2.8k | Facebook开源的Parse源码分析【系列】。 |
AlamofireObjectMapper | ★2.6k / Y | Alamofire 扩展,可使用 ObjectMapper 将 JSON 响应数据转换为快速对象。 |
Unbox | ★2k / Y | 一个易用的 Swift JSON 解码器 |
Gloss | ★1.7k / Y | 一个 Swift 写的 JSON 解析库 |
XMLDictionary | ★1.2k / Y | ios与mac os平台下xml与NSDictionary相互转化开源类库. |
KZPropertyMapper | ★1.1k | 以最少的代码实现数据映射和验证。 |
mapper | ★1.1k / Y | Swift 的 JSON 反序列化库。 |
PropertyMapper | ★1.1k | 使用最少的代码进行数据映射和验证。 |
Decodable | ★1.1k / Y | Swift 2 JSON 解析工具。 |
Freddy | ★1.1k / Y | 用于在Swift中解析JSON的可重用框架。 |
JASON | ★1k / Y | 具有出色性能和方便的运算符的 JSON 解析库 |
SwiftyJSONAccelerator | ★822 / Y | 使用 SwiftyJSON 或者 ObjectMapper 根据 JSON 生成 Swift 模型。支持 NSCoding 并且提供了使用 JSON 来表示模型的方法。 |
TouchJSON | ★806 | 一个 Objective-C 的 JSON 框架。 |
Genome | ★782 / Y | 一个易用、多样、安全,包含错误映射的JSON转Model的Swift库. |
Himotoki | ★779 / Y | 一个纯粹用 Swift 编写的类型安全的 JSON 解码库。 |
CodableAlamofire | ★743 / Y | Alamofire 的扩展程序,可将 JSON 数据转换为 Decodable 对象(Swift 4)。 |
Wrap | ★717 / Y | 易用的 Swift JSON 编码器。 |
Wrap.swift | ★717 / Y | 方便、易用的对象转 JSON 类库。 |
Marshal | ★690 | 一个好用的 JSON 解析框架 |
Elevate | ★624 / Y | Elevate是一个JSON解析框架,它利用Swift使解析变得简单、可靠和可组合。 |
JSONCodable | ★606 / Y | 基于 Swift 2.0 新特性(Protocol Extensions and Error Handling)的JSON 解析类。 |
JSONCodable | ★606 / Y | Swift json 编码解码三方库。 |
FlatBuffersSwift | ★552 / Y | 该项目将 FlatBuffers(一个高效的跨平台序列化库)引入进 Swift。 |
FastEasyMapping | ★549 | 一个快速序列化和反序列化 JSON 的框架。 |
Groot | ★530 | 将JSON字典和数组与 Core Data 托管对象相互转换。 |
ambly | ★518 | 将 ClojureScript REPL集成到嵌入式 JavaScriptCore 中。 |
Coolie | ★514 / Y | Swift json转model的三方库 。 |
PMHTTP | ★511 / Y | Swift/Obj-C HTTP框架,重点关注REST和JSON。 |
Cereal | ★374 / Y | Swift 对象序列化。 |
PMJSON | ★365 / Y | 纯Swift JSON编码/解码库。 |
OCMapper | ★347 / Y | Objective-C & Swift 通用的快速 JSON 模型转化框架。 |
JSONJoy-Swift | ★346 / Y | 可以将 JSON 转换为 Swift 对象。 |
Arrow |
★334 / Y | 一个在Swift中进行优雅的JSON解析的方式。 |
Serpent | ★281 / Y | 一个用于序列化Swift结构和类(编码和解码)的协议。 |
Motis | ★253 | 使用Cocoa的键值编码(KVC)轻松实现JSON到NSObject的映射。 |
Tailor | ★249 / Y | 一个非常快和方便的对象映射Swift三方库. |
JAYSON | ★242 | 严格且可扩展的JSON库。 |
AlamofireJsonToObjects | ★156 / Y | 一个将json data转为Swift对象的类扩展 |
CleanJSON | ★143 | 继承自 JSONDecoder,在标准库源码基础上做了改动,以解决 JSONDecoder 各种解析失败的问题,如键值不存在,值为 null,类型不一致。有中文文档。 |
RFJModel | ★137 | RFJModel是一个IOS类库,可以将JSON字典自动装填到OBJC对象. |
Jay | ★133 / Y | 纯 Swift JSON 解析及格式化工具,支持 Linux 和 OS X 。 |
Alembic | ★116 / Y | 函数式JSON解析,映射到对象以及序列化为JSON。 |
DDModel | ★69 | 一个 HTTP-JSON/XML-ORM-Persistent Object 工具. |
Tyro | ★47 | 函数式 JSON 解析和编码 |
TidyJSON.swift | ★44 / Y | TidyJSON.swift一款简单、易用、明了的 JSON 解析小类库。 |
alexander | ★34 / Y | 用Swift编写的极其简单的JSON帮助程序。 |
Mappable | ★17 | 轻量且功能强大的JSON对象映射库,专门针对不可变属性进行了优化。 |
NSTEasyJSON | ★11 / Y | 在 Objective-C 中处理JSON数据的最简单方法(类似于SwiftyJSON)。 |
LazyObject | ★10 / Y | 可以将 JSON 延迟反序列化为强类型的 Swift 对象。 |
WAMapping | ★9 | 一个可将字典变成对象的库,反之亦然,专为速度而设计! |
NativeJSONMapper | ★2 / Y | 简单的 Swift 4 JSON 编码和解码框架。 |
XML 和 HTML 解析
地址 | Stars/Siwft | 简介 |
---|---|---|
Ono | ★2.6k | 处理iOS和macOS的XML和HTML的明智方法。 |
SwiftSoup | ★2.2k / Y | SwiftSoup: 纯 Swift HTML 解析器,支持 jquery 语法,能按照 CSS Selector 方式抽取 DOM (支持 Linux, iOS, Mac, tvOS, watchOS 等系统) |
Kanna | ★2k / Y | 是用于 macOS/iOS 的 XML/HTML解析器。 |
SWXMLHash | ★1.2k / Y | 一个简单的用 Swift 实现的 XML 解析器。 |
AEXML | ★862 / Y | 用Swift编写的简单轻巧的XML解析器。 |
Fuzi | ★846 / Y | 一个支持 XPath和 CSS Selector 的快速,轻量级的XML和HTML解析器,支持Swift。 |
Ji | ★819 / Y | Swift的 XML/HTML 解析器。 |
SwiftyXMLParser | ★343 / Y | 用 Swift 实现的简单XML解析器。 |
XMLCoder | ★280 / Y | 基于 Swift Codable 协议的 XML 编码/解码器。 |
GDataXML-HTML | ★280 | XML格式数据解析 |
HTMLKit | ★192 | 一个 Objective-C 实现的 HTML 解析框架。 |
SwiftyXML | ★65 / Y | 使用 swift 4 实现,最快的方式处理 XML 数据。 |
AlamofireXmlToObjects | ★64 | Fetch a XML feed and parse it into objects |
序列化及表示层
地址 | Stars/Siwft | 简介 |
---|---|---|
swift-protobuf | ★3k / Y | 插件和运行时库,用于使用 Swift protobuf。 |
apollo-ios | ★2.5k | GraphQL iOS 客户端. |
FastCoding | ★968 | 是用来替代OSX及iOS中默认的序列化实现。它结构简单(仅头文件和.m文件两个)、支持ARC,线程安全,速度较内置实现更快. |
protobuf-swift | ★914 / Y | Google ProtocolBuffers 的 Swift 实现 |
JSONRPCKit | ★170 | 一个 JSON-RPC 2.0 库. |
其他工具
地址 | Stars/Siwft | 简介 |
---|---|---|
WKZombie | ★1.1k / Y | WKZombie 是一个iOS/macOS 的 Swift框架,无需用户界面或API(也称为无头浏览器)即可在网站内导航并收集数据。 它可以用于运行自动化测试或使用Javascript操作网站。 |
FeedKit | ★783 / Y | 用 Swift 编写的 RSS 和 Atom feed 解析器。 |
URLEmbeddedView | ★601 / Y | 可以自动缓存那些被识别为 Open Graph 协议(也叫做OG协议)的对象,同时可以将其以嵌入式卡片的方式来显示。 |
Erik | ★402 / Y | Erik 一个是基于WebKit的无头浏览器,无头浏览器可以用于网页功能测试,使用 javascript 操纵网页。 |
CoreXLSX | ★387 / Y | 支持 XLSX 文件格式,纯 Swift 实现。 |
SwiftCssParser | ★264 / Y | 用纯Swift编写的功能强大、可扩展的CSS解析器。 |
URLPreview | ★191 | 一个 NSURL 扩展,用于显示网页的预览信息。 |
AcknowledgementsPlist | ★70 | AcknowledgementsPlist管理依赖于iOS应用程序的库的许可证。 |
RLPSwift | ★22 / Y | 用Swift编写的递归长度前缀编码。 |
并发/调度/异步/多线程
多线程、并发相关框架 教程
-
GCD、多线程: Grand Central Dispatch,中文称为大中枢派发,是异步执行任务的技术之一
-
同步、信号量:
-
Swift 多线程、GCD、信号量
- 《Swift4.0 - GCD》
- 《Swift GCD DispatchSemaphore - 信号量》 - Swift 中信号量(DispatchSemaphore)的用法
- swift---GCD的基本使用
- Swift4 - GCD的使用
- 《Swift多线程:使用GCD实现异步下载图片》
多线程、并发相关框架
作业调度程序、协程、异步和类型安全线程库和框架
地址 | Stars/Siwft | 简介 |
---|---|---|
Venice | ★1.5k / Y | 用于Swift的CSP(协同、频道、选择)。 |
Queuer | ★901 / Y | 建立在操作队列和调度(也称为GCD)之上的队列管理器。 |
Overdrive | ★826 / Y | 专注于类型安全、并发和多线程的,快速 、专业的异步任务库。 |
Overdrive | ★826 / Y | 基于快速异步任务的Swift框架,关注类型安全、并发和多线程。 |
SwiftCoroutine | ★484 / Y | iOS和macOS的Swift协同程序库。 |
SwiftQueue | ★219 / Y | 具有并发运行、失败/重试、持久性、重复、延迟等功能的作业计划程序。 |
BLStopwatch | ★214 | 代码耗时打点计时器. |
Flow | ★213 / Y | Swift中面向操作的程序设计。 |
Concurrent | ★205 | 函数并发原语。 |
JX_GCDTimer | ★181 | 定时器,NSTimer和GCD哪个更好. |
Dispatch | ★179 / Y | 让 GCD 更容易、简单使用的轻量级的库。 |
Kommander | ★164 / Y | Kommander是一个在不同线程中管理任务执行的Swift库。通过定义一个简单但强大的概念,Kommand。 |
AsyncNinja | ★141 / Y | 一套完整的并发和反应式编程原语。 |
Threadly | ★62 / Y | Swift中的类型安全线程本地存储。 |
GroupWork | ★38 / Y | 在Swift中实现简单的并发异步任务。 |
Aojet | ★34 / Y | 一个 actor 模型库,基于 swift. |
Brisk | ★25 / Y | 允许简洁有效的并发操作的DSL,基于Swift |
SwiftyTask | ★20 / Y | 一个高性能的排队系统,用于管理App中的全部任务。 |
Flow-iOS | ★14 | 使您的逻辑流和数据流清晰易读。 |
StickyLocking | ★2 | 一种通用的嵌入式层次锁管理器,用于构建所有类型的高并发应用程序。 |
Thread | 多线程Demo集合. |
GCD 相关开源工具
- GCD 语法糖,工具和计时器*
地址 | Stars/Siwft | 简介 |
---|---|---|
Async | ★4.5k / Y | Swift 的 GCD 异步派发语法糖 |
YYDispatchQueuePool | ★428 / Y | iOS实用程序类,用于管理全局调度队列。 |
GCDKit | ★309 / Y | GCD 的 Swift 简化版. |
Chronos-Swift | ★250 / Y | 一套 GCD工具集 |
Me | ★193 / Y | 嵌套异步计算的超轻量解决方案。 |
Dispatch | ★179 | 只是一个很小的库,让GCD的使用更加容易和直观。 |
GCDTimer | ★179 / Y | 经过测试的 Swift GCD 计时器。 |
SwiftSafe | ★158 / Y | 线程同步变得容易,基于Swift |
AlecrimAsyncKit | ★91 / Y | 将 async and await 特性带给 Swift. |
Threader | ★37 / Y | 漂亮的GCD调用方式和更容易执行的代码 |
GrandSugarDispatch | ★31 | GCD 语法糖. |
SwiftyTask | ★20 / Y | 具有高性能� |