自己总结的 iOS ,Mac 开源项目以及库,知识点------持续更新
Posted liuweiqiang11188
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自己总结的 iOS ,Mac 开源项目以及库,知识点------持续更新相关的知识,希望对你有一定的参考价值。
自己在 git 上看到一个非常好的总结的东西,但是呢, fork 了几次,就是 fork 不到我的 git 上,干脆复制进去,但是,也是认真去每一个每一个去认真看了,并且也是补充了一些,感觉非常棒,所以好东西要分享,为啥用 CN 博客,有个好处,可以随时修改,可以持续更新,不用每次都要再发表,感觉这样棒棒的
自己总结的ios、mac开源项目及库,持续更新。。。。 github排名 https://github.com/trending,github搜索:https://github.com/search
目录
- UI
- 动画
- 网络相关
- Model
- 通讯录
- 其他
- 数据库
- 缓存处理
- 图像浏览及处理
- 摄像照相视频音频处理
- 响应式框架
- 消息相关
- 版本新API的Demo
- 代码安全与密码
- 测试及调试
- AppleWatch
- 完整项目
- 好的文章
- VPN
- Xcode插件
- 美工资源
- 开发资源
具体内容 =============================
UI
下拉刷新
- EGOTableViewPullRefresh - 最早的下拉刷新控件。
- SVPullToRefresh - 下拉刷新控件。
- MJRefresh - 仅需一行代码就可以为UITableView或者CollectionView加上下拉刷新或者上拉刷新功能。可以自定义上下拉刷新的文字说明。具体使用看“使用方法”。 (国人写)
- XHRefreshControl - XHRefreshControl 是一款高扩展性、低耦合度的下拉刷新、上提加载更多的组件。(国人写)
- CBStoreHouseRefreshControl - 一个效果很酷炫的下拉刷新控件。
- BreakOutToRefresh - 一个下拉刷新打砖块的开源 Swift 库,能让用户在等待下拉刷新的时候边玩撞球游戏边等待。
- KYJellyPullToRefresh - 实现弹性物理效果的下拉刷新,神奇的贝塞尔曲线,配合UIDynamic写的一个拟物的下拉刷新动画。
- MHYahooParallaxView - 类似于Yahoo Weather和News Digest首屏的视差滚动。
- SDRefreshView - 简单易用的上拉和下拉刷新(多版本细节适配)。
- ZLSwiftRefresh - swift下拉刷新/上拉加载更多,支持自定义动画,集成简单,兼容UITableView/CollectionView/ScrollView/WebView。
- BreakOutToRefresh - swift,上拉和下拉刷新。
- GearRefreshControl - swift,上拉和下拉刷新。
- refresher - swift,上拉和下拉刷新。
- 可展开/收缩的下拉菜单--SvpplyTable - 一个可展开可收缩的下拉菜单,类似Svpply app。
- ODRefreshControl - 原iOS6上的橡皮糖刷新样式,很有意思。现在也很多大的 App 在用,比如虾米音乐和 QQ 客户端。
- PullToMakeSoup - PullToMakeSoup, 自定义下拉刷新的动画效果:煮饭, Yalantis新作!
- TwitterCover - Twitter iOS客户端的下拉封面模糊效果。
- Replace-iOS - Replace-iOS 让人眼前一亮的下拉刷新(iOS)。
- Animations - 封装了一下,使用的时候只要两行代码。一些动画的飞机稿,都是一些单独分离出来的用于测试的子动画,现在统一归类一下。
- PullToBounce - 下拉刷新的动画 for UIScrollView。
- WaterDropRefresh - 仿Path 水滴的下拉刷新效果 还有视差滚动。
- ESRefreshControl - 仿新浪微博、百度外卖、网易新闻下拉刷新样式Demo(仅供参考)。
- WaveRefresh - 下拉刷新水波纹动画。
- DGElasticPullToRefresh - 是一款带有弹性效果的 iOS 下拉刷新组件。
- CALayerAnimationDemoh - 双向注水动画下拉刷新组件,使用CALayer的mask实现。
模糊效果
- FXBlurView - 是一个UIView子类,支持iOS5.0以上版本,支持静态、动态模糊效果,继承与UIView的模糊特效。
- VVBlurPresentation -很简单易用的在原来viewconntroller基础上做模糊,然后present新的viewcontroller的。
- UICustomActionSheet - 通过模糊背景来着重强调与菜单相关的元素--对话框 里面已经收藏。
- SABlurImageView - 支持渐变动画效果的图像模糊化类库。P.S. 与前几天推存类库 SAHistoryNavigationViewController 是同一位作者。
- Blurable.swift - swift模糊组件。
AutoLayout
- Masonry - Masonry是一个轻量级的布局框架,拥有自己的描述语法,采用更优雅的链式语法封装自动布局,简洁明了并具有高可读性( 使用介绍1 使用介绍2),iOS自适应前段库-Masonry的使用),Masonry、Classy、ClassyLiveLayout介绍。使用DEMO 视图居中显示、子视图含边距、视图等距离摆放、计算ScrollView的contentsize。
- Classy - Classy是一个能与UIKit无缝结合stylesheet(样式)系统。它借鉴CSS的思想,但引入新的语法和命名规则,Classy官网,Masonry、Classy、ClassyLiveLayout介绍。
- ClassyLiveLayout - ClassyLiveLayout通过结合Classy stylesheets与Masonry一起使用,能够在运行的模拟器中微调Auto Layout约束实时显示效果的工具,Masonry、Classy、ClassyLiveLayout介绍。
- Snap - Snap是Masonry Auto Layout DSL的Swift版本,是一款轻量级的布局框架,使用了更良好的语法封装了AutoLayout。Snap支持iOS和OS X。
- SnapKit - 就是“snap”, --swift 喜欢自动布局吗?当然喜欢!至少在storyboard中创建时会喜欢。 在代码中纯手工创建约束灰常痛苦,但幸运的是我们有了SnapKit,在board中用上它,你可以简单直观地编写约束了。
- PureLayout - PureLayout 是 iOS & OS X Auto Layout 的终极 API——非常简单,又非常强大。PureLayout 通过一个全面的Auto Layout API 扩展了 UIView/NSView, NSArray 和 NSLayoutConstraint,仿照苹果自身的框架。
- UIView-AutoLayout - Deprecated in favor of PureLayout, which includes OS X support:https://github.com/smileyborg/PureLayout。
- Cartography - Cartography 是用来声明 Swift 中的 Auto Layout,无需输入任何 stringly 就可设置自己 Auto Layout 的约束声明。
- Auto-Layout-Showcase - swift,AutoLayout 进阶 Demo,宽高比约束、比例约束、不等约束、视差约束、低优先级约束等高级用法,无需写码即可进行复杂页面布局,Demo 还动态模拟了各屏幕下的效果。来自百度知道 iOS 小组的内部分享。
- UIView-FDCollapsibleConstraints - 一个AutoLayout辅助工具,最优雅的方式解决自动布局中子View的动态显示和隐藏的问题。第二个Demo模拟了一个经典的FlowLayout,任意一个元素隐藏时,底下的元素需要自动“顶”上来,配合这个扩展,你可以在IB里连一连,选一选,不用一行代码就能搞定。
- Autolayout_Demo - 在项目中用自动布局实现的类似抽屉效果。
- 当view隐藏的时候也隐藏其autolayout的NSLayoutAttribute - 当view隐藏的时候也隐藏其autolayout的NSLayoutAttribute,从而不用大量的代码工作。
- SDAutoLayout - AutoLayout 一行代码搞定自动布局!支持Cell、Label和Tableview高度自适应,致力于做最简单易用的AutoLayout库。
- Neon.swift - 功能强大的 UI 布局神器。
富文本
- RTLabel - RTLabel 基于UILabel类的拓展,能够支持html标记的富文本显示,它是基于Core Text,因此也支持Core Text上的一些东西。32位,很久没有更新了。
- RTLabel - 富文本,RTLabel支持64位。
- TYAttributedLabel - TYAttributedLabel。 简单易用的属性文本控件(无需了解CoreText),支持富文本,图文混排显示,支持添加链接,image和UIView控件,支持自定义排版显示。
- TQRichTextView - 用于做富文本视图控件显示,用于即时通讯的表情显示,以及资源评论的富文本显示。
- TTTAttributedLabel - 一个文字视图开源组件,是UILabel的替代元件,可以以简单的方式展现渲染的属性字符串。另外,还支持链接植入,不管是手动还是使用UIDataDetectorTypes自动把电话号码、事件、地址以及其他信息变成链接。用TTTAttributedLabel创建变化丰富的UILabel - 网易新闻iOS版使用。
- MLEmojiLabel - 自动识别网址、号码、邮箱、@、#话题#和表情的label。可以自定义自己的表情识别正则,和对应的表情图像。(默认是识别微信的表情符号),继承自TTTAttributedLabel,所以可以像label一样使用。label的特性全都有,使用起来更友好更方便。
- FXLabel - FXLabel是一个功能强大使用简单的类库,通过提供一个子类改进了标准的UILabel组件,为字体增加了阴影、内阴影和渐变色等,可以被用在任何标准的UILabel中。FXLabel还提供了更多控件,可以对字体行距、字体间距等进行调整。
- WFReader - 一款简单的coretext阅读器,支持文本选择、高亮以及字体大小选择等。
- WPAttributedMarkup - 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。
- KMPlaceholderTextView - 可显示多行 placeholder 的 textView,可以在IB里面设置 -- swift。
- HHFlashSwitch - 一个另类的UISwitch,选择后,背景水波扩散变色效果。
- UUColorSwitch - Switch 开关动画效果,当打开开关时,Switch可实现平滑渲染过渡到父视图的效果。
- UITextViewDIYEmojiExample - UITextView编辑时插入自定义表情-简单的图文混编。
- Shimmer - BlingBling闪光效果,酷炫的Label的效果,可以用于加载等待提示。
- ZSSRichTextEditor - 适用于iOS的富文本WYSIWYG编辑器,支持语法高亮和源码查看。ZSSRichTextEditor包含所有WYSIWYG标准的编辑器工具。
- RichEditorView - swift,一套可定制富文本编辑器组件及示例。功能完整、代码简练、实现逻辑巧妙(编辑器核心与 WebView 结合,采用 HTML5 contentEditable 编辑模式,执行JS 配套命令 execCommand 实现富文本编辑功能)。
- DTCoreText - 可以解析HTML与CSS最终用CoreText绘制出来,通常用于在一些需要显示富文本的场景下代替低性能的UIWebView。DTCoreText源码解析。
- CSGrowingTextView - 用作即时通讯文本框和评论文本框使用,可以显示多行输入。
- MarkdownTextView - 显示Markdown的TextView。
- 高仿微信限定行数文字内容 - 采用Autolayout高仿微信纯文字限定行数。
- FuriganaTextView - 实现复杂的日文韩文排版。
- ParkedTextField - 带固定文本的输入组件。
- LTMorphingLabel - swift 能够实现文字变形动画效果的Label,用Swift写的一个能够实现文字变形动画效果的Label,很炫。
- GJCFCoreText - 图文混排。
- AttributedLabel - 显示性能数量级 UILabel 的 AttributedLabel。无畏无惧、挑战权威。
- FFLabel - 自动检测 URLs, @username, #topic# 等关链词(提供响应扩展)。实用的标签文本小组件。
- TextFieldEffects - 标准的UITextField有些枯燥么?来认识一下TextFieldEffects吧!废话不多说,只要看几个例子,是啊,都是些简单的dropin控制器。甚至可以在storyboard中使用IBDesignables。
- AutocompleteField - 可应用于 iOS 应用中文字输入框自动补全的场景, 兼容到 iOS 8。
- Splitflap.swift - 可用于快速给 iOS 应用创建文字翻转的动画效果。
- WordPress-Editor-iOS - 一个文本编辑器 简书和新浪博客都在用。
- YYText - 功能强大的 iOS 富文本框架。
图表
- PNChart - 国内开源作者,动态的图表。
- swift-linechart - 功能完整、实用的折线图组件。使用方便,参数配置简单。是不可多得的优质组件--swift。
- ios-charts - 一款优秀 android 图表开源库 MPAndroidChart 的 Swift 语言实现版(支持 Objective-C 和 Swift 调用)。缺省提供的示例代码为 Objective-C。
- TEAChart - xhacker/TEAChart 一个简洁的 iOS 图表库,支持柱状图、饼图以及日历等。
- YOChartImageKit - 支持在watchOS上绘制图表,看它最近更新挺勤快的,可以关注一下。
- RealtimeGradientText - Fun With CALayer Mask 刚好今天开源了一个有趣的项目 RealtimeGradientText,所以也好聊一下 CALayer 的 Mask,说明。
表相关与Tabbar
- SWTableViewCell - 国内开源作者,带很多手势的表单元格。
- MCSwipeTableViewCell - 带很多手势的表单元格。
- TMQuiltView - 瀑布流。
- WaterfallFlowDemo - 一个简单的UICollectionView瀑布流布局演示demo。
- XLForm - 很多表格类的table,写法更高冷一点,推荐使用。
- Eureka.swift - Eureka 是 XLForm 的 Swift 的移植版本, 一个可以帮助开发者们快速构建 iOS 各种复杂表单的库, 具有较高的可扩展性, 方便自定制样式。
- RETableViewManager - 可以十分方便地生成各种样式、各种功能的TableView。只要开发者能想到的列表效果或者功能,都可以利用这份代码迅速编写出来。比如,之前要实现一个填写各种资料的列表,可能需要很多代码,现在只需要几行代码就可以实现。
- UIScrollSlidingPages - 允许添加多视图控件,并且可以横向滚动。有点类似于Groupon app。
- HBHorizontalTableView - swift,TableView 横向滚动小示例(仿照 AppStore 应用展示)。
- HorizontalScrollCell - HorizontalScrollCell是一款使用方便的水平方向可滚动的单元格,适用于UICollectionView中实现水片方向滚动视图。 。
- SYJiugonggeTableView - tableView封装的九宫格。
- UUChatTableView - UUChatTableView 气泡聊天界面,支持文本、图片以及音频的气泡聊天界面。源码推荐说明。
- Chats - 聊天 UI 示例程序。此项目应该只为演示或学习之用,没有服务器 -- swift。
- Atlas-iOS - 快速在iOS里集成聊天功能,类似开源版本的环信。Layer家开源了一套聊天app界面的解决方案.看起来很赞,很多蛮复杂的东西直接都帮封好了。不得不说现在做app开发真是很简单,大部分时间搭积木就可以了。官方网站。
- Chatto.swift - Chatto.swift:轻量级聊天应用框架及示例。文字及图片可扩展输入栏,汽泡效果等聊天核心特性,分页及自动布局完善。
- DLSlideView - DLSlideView对常见的顶部Tab页点击、滑动分页做了封装。它使用基于ViewController的container特性(而不是scrollview)来管理各个子页面,以支持无限分页,源码推荐说明。
- VOVCManager - 页面管理器:1.跳转指定页面,只需要知道viewController的Class名,如果有storyboard,则需要指定storyboard名;2.无需添加基类;3.支持URLScheme跳转指定页面。
- MBXPageViewController - 简洁快速的页面切换--MBXPageViewController,带有按钮控件的UIPageController,非常整洁、简单以及快速。该项目通过三种形式展示页面之间的切换,比如导航栏上的多个tab切换、页面左右两端箭头指示切换,以及使用分段控件。
- PagerTab - UIScrollView实现滑动转换页面,类似网易云音乐iOS版的页面滑动切换效果。
- GUITabPagerViewController - 多个tab滑动切换。
- VOMetroLayoutDemo - Metro风格的UICollectionView, 目前只支持横向布局,仅在iPad上应用。
- KYCellAnimation - 给UITableViewCell增加进入的动画。
- COBezierTableView - swift,通过编辑 Bezier 曲线四点位置设置 TableView 内 Cell 及对应按扭位置。实验效果很赞。
- RDVTabBarController - 一个TabBar组件,可以方便设置底部菜单的文字图片,点击效果,小红点提示等。
- LxTabBarController - 改变了原生tabbar切换tab时的生硬效果,并加入滑动切换手势(有和界面上的其它手势发生冲突的风险,可根据具体项目予以关闭),swift版本。
- WXTabBarController - 在系统 UITabBarController 的基础上完美实现了安卓版微信 TabBar 的滑动切换功能,单手操作 iPhone 6 Plus 切换 TabBar 一直是一件很痛苦的事情,而滑动切换是一种不错的解决方案,支持屏幕旋转。
- GooeyTabbar - 皮筋式弹性缩放工具栏示例及演示。
- 横向展示文本内容的自定义cell - 可以横向展示文本内容的自定义cell,根据文本无限滚动。
- UITableView-FDTemplateLayoutCell - UITableView-FDTemplateLayoutCell 是一个方便缓存 UITableViewCell 的高度的框架。
- ExpandingStackCells - 采用 UIStackView 实现表格单元格扩展内容显示示例及解决方案。
- FDStackView - 可以将 UIStackView 的最低支持版本拉低到 iOS6,无需配置,没有代码侵染,扔到工程里后直接用系统 UIStackView 的 API 即可,同时兼容 Storyboard。
- Sapporo - swift 单元格模型驱动的集合视图管理器组件。又一个超实用的“轮子”。
- MDIHorizontalSectionTableViewController - 根据产品需求开源了一个交互项目,可以理解为横向Section的TableView,section和cell同时支持拖拽,后续安卓版本也会开源出来。
- JZNavigationExtension - 多功能导航控制器,可以透明返回栏。
- QuickRearrangeTableView - 基于 UITableView 的快速重排功能扩展子类。通过长按选定单元格然后滚动移动到指定位置。
- 关于自己iOS项目使用的第三方开源库