iOS超全开源框架、项目和学习资料汇总(1)UI篇

系统的整理iOS开发常用的第三方库、学习资源等,如果有更好的三方库、没有整理到、可以在评论留言,我会及时更新的,还不赶快mark~

上下拉刷新控件

**1. ** MJRefresh --仅需一行代码就可以为UITableView或者CollectionView加上下拉刷新或者上拉刷新功能。可以自定义上下拉刷新的文字说明。(推荐)
**2. ** SVPullToRefresh --下拉刷新控件4500+star,值得信赖
**3. ** CBStoreHouseRefreshControl --一个效果很酷炫的下拉刷新控件3600+star
**4. ** BreakOutToRefresh --一个下拉刷新打砖块的开源 Swift 库,能让用户在等待下拉刷新的时候边玩撞球游戏边等待2000star
**5. ** KYJellyPullToRefresh --实现弹性物理效果的下拉刷新,神奇的贝塞尔曲线,配合UIDynamic写的一个拟物的下拉刷新动画
**6. ** MHYahooParallaxView --类似于Yahoo Weather和News Digest首屏的视差滚动
**7. ** SDRefreshView --简单易用的上拉和下拉刷新(多版本细节适配)
**8. ** BreakOutToRefresh --swift,上拉和下拉刷新2000star
**9. ** refresher --swift,上拉和下拉刷新800star
**10. ** SvpplyTable --一个可展开可收缩的下拉菜单,类似Svpply app
**11. ** ODRefreshControl --原iOS6上的橡皮糖刷新样式,很有意思。现在也很多大的 App 在用,比如虾米音乐和 QQ 客户端。
**12. ** PullToMakeSoup --自定义下拉刷新的动画效果:煮饭, Yalantis新作!
14. ** ** TwitterCover --Twitter iOS客户端的下拉封面模糊效果
**15. ** Replace-iOS --Replace-iOS 让人眼前一亮的下拉刷新(iOS)
**16. ** Animations --使用的时候只要两行代码。一些动画的飞机稿,都是一些单独分离出来的用于测试的子动画


模糊效果

**1. ** FXBlurView --支持iOS5.0以上版本,支持静态、动态模糊效果,继承与UIView的模糊特效4600+star(推荐)。
**2. ** VVBlurPresentation --很简单易用的在原来viewConntroller基础上做模糊,然后present新的viewController的,王巍的作品
**3. ** UICustomActionSheet -- 通过模糊背景来着重强调与菜单相关的元素–对话框
**4. ** SABlurImageView --支持渐变动画效果的图像模糊化类库


AutoLayout

**1. ** Masonry --Masonry是一个轻量级的布局框架,拥有自己的描述语法,采用更优雅的链式语法封装自动布局,简洁明了并具有高可读性 13000+star(吐血推荐)
**2. ** SnapKit -- Snap是Masonry Auto Layout DSL的Swift版本,是一款轻量级的布局框架,使用了更良好的语法封装了AutoLayout。Snap支持iOS和OS X
**3. ** PureLayout --适用于iOS和OS X自动布局简单、强大5900+star
**4. ** Cartography --swift,AutoLayout 进阶 Demo,宽高比约束、比例约束、不等约束、视差约束、低优先级约束等高级用法,无需写码即可进行复杂页面布局,Demo 还动态模拟了各屏幕下的效果。来自百度知道 iOS 小组的内部分享。


富文本

**1. ** TTTAttributedLabel--一个文字视图开源组件,是UILabel的替代元件,可以以简单的方式展现渲染的属性字符串。另外,还支持链接植入,不管是手动还是使用UIDataDetectorTypes自动把电话号码、事件、地址以及其他信息变成链接,6800+star(推荐)
**2. ** TYAttributedLabel --TYAttributedLabel 简单,强大的属性文本控件(无需了解CoreText),支持图文混排显示,支持添加链接,image和UIView控件,支持自定义排版显示
**3. ** RTLabel--RTLabel的工作方式类似的UILabel,但支持富文本显示类似HTML的标记。
**4. ** TQRichTextView--富文本视图控件,用来显示表情,URL 等。
**5. ** MLEmojiLabel --自动识别网址、号码、邮箱、@、#话题#和表情的label。 可以自定义自己的表情识别正则,和对应的表情图像。(默认是识别微信的表情符号),继承自TTTAttributedLabel,所以可以像label一样使用。 label的特性全都有,使用起来更友好更方便。
**6. ** FXLabel -- FXLabel是一个功能强大使用简单的类库,通过提供一个子类改进了标准的UILabel组件,为字体增加了阴影、内阴影和渐变色等,可以被用在任何标准的UILabel中。FXLabel还提供了更多控件,可以对字体行距、字体间距等进行调整。
**7. ** Shimmer --BlingBling闪光效果,酷炫的Label的效果,可以用于加载等待提示,一个简单的方法来添加这样的效果在一个iOS应用任何视图,faceBook出品,7100+star
**8. ** ZSSRichTextEditor -- 适用于iOS的富文本WYSIWYG编辑器,支持语法高亮和源码查看。ZSSRichTextEditor包含所有WYSIWYG标准的编辑器工具
**9. ** RichEditorView-- swift,一套可定制富文本编辑器组件及示例。功能完整、代码简练、实现逻辑巧妙(编辑器核心与 WebView 结合,采用 HTML5 contentEditable 编辑模式,执行JS 配套命令 execCommand 实现富文本编辑功能)。
**10. ** DTCoreText -- 可以解析HTML与CSS最终用CoreText绘制出来,通常用于在一些需要显示富文本的场景下代替低性能的UIWebView。
**11. ** MarkdownTextView -- 显示Markdown的TextView
**12. ** ParkedTextField -- 带固定文本的输入组件
**13. ** LTMorphingLabel -- swift 能够实现文字变形动画效果的Label,用Swift写的一个能够实现文字变形动画效果的Label,很炫
**14. ** AttributedLabel -- 显示性能数量级 UILabel 的 AttributedLabel。无畏无惧、挑战权威
**15. ** FFLabel -- 自动检测 URLs, @username, #topic# 等关链词(提供响应扩展),实用的标签文本小组件(国产)
**16. ** RealtimeGradientText --渐变的文字


图表

**1. ** PNChart -- 国内开源作者,动态的图表,7500+star(推荐)
**2. ** swift-linechart -- 功能完整、实用的折线图组件。使用方便,参数配置简单。是不可多得的优质组件–swift
**3. ** Charts -- 一款优秀 Android 图表开源库 MPAndroidChart 的 Swift 语言实现版(支持 Objective-C 和 Swift 调用)。缺省提供的示例代码为 Objective-C
**4. ** TEAChart -- xhacker/TEAChart 一个简洁的 iOS 图表库,支持柱状图、饼图以及日历等)
**5. ** YOChartImageKit -- 支持在watchOS上绘制图表,可以关注一下


表格相关

**1. ** SWTableViewCell -- 王巍开源作品,带很多手势的表单元格。
**2. ** MCSwipeTableViewCell -- 带很多手势的表单元格,2000+star
**3. ** TMQuiltView -- 瀑布流。
**4. ** XLForm -- 很多表格类的table,写法更高冷一点,推荐使用
**5. ** RETableViewManager -- 可以十分方便地生成各种样式、各种功能的TableView。只要开发者能想到的列表效果或者功能,都可以利用这份代码迅速编写出来。比如,之前要实现一个填写各种资料的列表,可能需要很多代码,现在只需要几行代码就可以实现。
**6. ** Chats -- 聊天 UI 示例程序。此项目应该只为演示或学习之用,没有服务器 — swift。
**7. ** Atlas-iOS -- UUChatTableView 气泡聊天界面,支持文本、图片以及音频的气泡聊天界面。源码推荐说明
**8. ** Atlas-iOS -- 快速在iOS里集成聊天功能,类似开源版本的环信。Layer家开源了一套聊天app界面的解决方案.看起来很赞,很多蛮复杂的东西直接都帮封好了。不得不说现在做app开发真是很简单,大部分时间搭积木就可以了
**9. ** MBXPageViewController -- 简洁快速的页面切换–MBXPageViewController,带有按钮控件的UIPageController,非常整洁、简单以及快速。该项目通过三种形式展示页面之间的切换,比如导航栏上的多个tab切换、页面左右两端箭头指示切换,以及使用分段控件。
**10. ** PagerTab -- UIScrollView实现滑动转换页面,类似网易云音乐iOS版的页面滑动切换效果
**11. ** GUITabPagerViewController -- 头部多个tab滑动切换
**12. ** COBezierTableView-- swift,通过编辑 Bezier 曲线四点位置设置 TableView 内 Cell 及对应按扭位置。实验效果很赞
**13. ** RDVTabBarController -- 一个TabBar组件,可以方便设置底部菜单的文字图片,点击效果,小红点提示等。
**14. ** UITableView-FDTemplateLayoutCell -- UITableView-FDTemplateLayoutCell 是一个方便缓存 UITableViewCell 的高度的框架。
**15. ** MDIHorizontalSectionTableViewController-- 根据产品需求开源了一个交互项目,可以理解为横向Section的TableView,section和cell同时支持拖拽
**16. ** JZNavigationExtension-- 多功能导航控制器,可以透明返回栏
17. ** QuickRearrangeTableView – 基于 UITableView 的快速重排功能扩展子类。通过长按选定单元格然后滚动移动到指定位置
** 18.
Eureka 一个很棒的表单库@xiAo__Ju推荐的


隐藏与显示

**1. ** SlideTapBar – 滚动栏菜单,向上滚动时隐藏tabbar,向下滚动马上显示tabbar。
**2. ** FoldingTabBar.iOS – 可折叠Tab Bar和Tab Bar Controller。
**3. ** LTNavigationBar – LTNavigationBar为app导航栏添加动态着色效果,可自定义其背景色。Demo包含:1.变换背景色;2.滚动视图,导航栏和状态栏重叠。
**4. ** BLKFlexibleHeightBar – 固定Header的效果库。。


HUD与Toast

**1. ** MBProgressHUD – 最多人用的loading。
**2. ** SVProgressHUD – SVProgressHUD的loading,如果你需要定制化的等待提示器,这个就是了(也许是最好的)。。
**3. ** ProgressHUD – ProgressHUD的loading,使用最简单。
**4. ** MMProgressHUD – 设置HUD出现和消失的方式(包括上下、左右、淡入淡出、放大缩小等等),设置HUD的内容(可以在HUD中加入帧动画、动态图片等等),设置HUD出现时的底部覆盖层颜色,等等。总而言之,这是一份集大成的HUD代码。慢慢看视频吧,囊括了所有效果。
**4. ** **WSProgressHUD **– 一个小巧精致的HUD,支持添加到自定义View上, 还有更多小细节


对话框/弹出框

**1. ** WCAlertView – 自定义的对话框。
**2. ** IOS7AlertView – IOS7AlertView的对话框。
**3. ** AMSmoothAlert – 动画效果不错,最多star,但不支持arm64。
**4. ** DQAlertView – 扁平化的样式不错。
**5. ** HHAlertView – 一个简易的alertview 有三种样式,有成功,失败,和警告三种样式,支持Delegate和block两种回调。
**5. ** MJPopupViewController – 实现弹出视图的各种弹出和消失效果,包括淡入淡出(fade in,fade out),从屏幕上方飞进,下方飞出,从屏幕左方飞进,右方飞出等等效果,弹窗。
**7. ** EasyTipView – 弹出提示框类及演示示例。同样地,API 简单、易用。好“轮子”,弹窗。
**8. ** kxmenu – kxmenu弹出菜单,点击视图上任意位置的按钮,会弹出一个菜单,并且有个小箭头指向点击的按钮,类似气泡视图。弹出的菜单位置会根据按钮的位置来进行调整。
**9. ** QBPopupMenu – QBPopupMenu弹出菜单,实现类似 UIMenuItem 的弹出菜单按钮。点击按钮,会弹出一个菜单,上面可以排列多个按钮。纯代码实现,不需要任何图片。
**10. ** STModalDemo – 弹出视图(通知,提示,选择,窗口)。
**11. ** TAOverlay – TAOverlay可通过叠加层展示有用的信息,可自定义文本和背景色,添加阴影和模糊效果,以及更改字体大小或者用自定义图片替换页面上的icon。
**12. ** UICustomActionSheet – 通过模糊背景来着重强调与菜单相关的元素–模糊效果 里面已经收藏。
**13. ** ActionSheetPicker-3.0 – 该项目是此前热门项目ActionSheetPicker的新版本,快速复制了iOS 8上的下拉 UIPickerView/ActionSheet功能。
**14. ** MJAlertView – 3D效果转场效果警示图–MJAlertView。
**15. ** SwiftyDrop – 轻量、易用的小清新弹出列表及信息提示组件真心不错。


其他UI

AwesomeMenu – 最多人用的Path菜单。
DCPathButton – Path,4.0的弹出菜单,呼出或者关闭菜单时,多个小图标会分别按照逆时针和顺时针的方向进行滚动。
SphereMenu – 利用UIDynamicAnimator的有趣的菜单,path类似。
KYGooeyMenu – KYGooeyMenu 是一个具有 Gooey Effects 带粘性的扇形菜单控件(卫星菜单、path)。
TwitterPaggingViewer – 多个Tableview,左右滑动。
CircularProgressControl – Circular Progress Control using CAShapeLayer ,环形进度控制条。
KDCircularProgress – KDCircularProgress是使用swift制作的色彩炫丽的进度条,可以加入多种颜色来控制进度条的渐变效果。
XLPagerTabStrip – 做的很棒的iOS下的PagerTabStrip。
RandomColorSwift – 一个自动生成好看的颜色的 Swift 库,RandomColorSwift。
HexColorService – 将16进制颜色字符串转成UIColor。
Rainbow – 旨在提高代码可读性及易用性的 UIColor 扩展,它使原先有限的预定义颜色(方法)选择,扩展至超过 1200 种。
UIColor-ChineseTraditionalColors – 中国传统颜色引用 UIColor 扩展。“UIColor.桃红(),UIColor.竹青() …”,共158种。
类似美团的下拉菜单 – 类似美团的下拉菜单,源码推荐说明
类似美团的下拉选项 – 类似于美团、大众点评的下拉菜单选项,code4app代码,评论代码有瑕疵。
CRMediaPickerController – 一个简单易用的图片/视频选择器。1.可同时选择照片和视频。 2.挑选范围有Camera、Camera Roll、Photo Library以及最近拍摄的照片和视频。3.可自定义UIImagePickerController属性(Camera Overlay、Camera Device、Camera View Transform以及allowsEditing)。4.支持横屏和竖屏5.原生的iOS UI。,源码推荐说明
MDCSwipeToChoose – MDCSwipeToChoose可简单地添加滑动手势来调用UIView,并使用该行为提供了一个组件以创建类似Tinder app的like或者dislike界面的轻扫。基于轻扫的方向,你可以决定执行什么样的行为,并且你可以自定义文本颜色和图片。该项目适用于教学用的抽认卡、图片查看器以及其他等。
iOS Material Design库 – 该项目借鉴于谷歌的Material Design guideline,用户可自定义背景色。
ZMaterialDesignUIButton – Swift Material Design UIButton。
MediumScrollFullScreen – Medium的可扩展滚动页面,上下滚动时,全屏显示内容,并自然消隐上下菜单。由此项目感知,作者是一位很注重细节的开发者,他的另外几个菜单类项目也都不错,值得参考,比如:PathMenu, MediumMenu 等。
SDProgressView – 简便美观的进度指示器,此系列共有六种样式的进度指示器。
WZFlashButton – WZFlashButton,点击后button里面出现水波扩散效果。
Twinkle – 为字体加上钻石版闪耀的效果。使用Swift编写。
ios-multi-back-button – 可替换内置的UInavigationController返回按钮,长按左上角的返回按钮,实现多层级的快速返回。
ASDayPicker – 适用于iOS (iPhone)的日期选择器,类似于Calendar app的周视图。
today extension – 用纯代码构建一个Widget(today extension) 。
FSCalendar – 日历视图,带有微妙和平滑的滚动效果,可自定义外观–国人。
HSDatePickerViewController – 带有Dropbox Mailbox感觉的时间日期选择器。启动是背景被模糊化。界面也是主流的扁平化风格。
JTCalendar – iOS下优美的 Calendar 组件,做 GTD 类 App 必备。
Persei – 动画隐藏或显示顶部菜单支持库及示例项目。–swift
Form – JSON 驱动的 Form表单系统,复杂的表单填写类 App 极其需要(比如淘宝呢!)。
SwiftyFORM – swift 表单输入框架(亮点是表单验证规则引擎),是我见过地最易用的 Swift 表单组件。
SwiftSpinner – SwiftSpinner是使用swift制作的一款精致带感的指示器,并且连带有字体信息显示,模糊背景,半透明,扁平化等IOS8的效果。
AKPickerView-Swift – 一款小而美的 3D 效果选择器。
ImagePickerSheet – 图片或视频选择器(可多选)组件及其示例项目。
iOS-RatingBar – iOS-RatingBar swift版的评分控件,跟Android的RatingBar一样有两种模式,评分模式和只读模式’支持视图编辑,自定义星星数量,评分等级,另外还能支持非整数星,0.5颗星,0.1颗星,可以开启动画效果。
RKNotificationHub – 快速给 UIView 添加上炫酷的通知图标(Badge、红点、提示)。
BubbleTransition – 以气泡膨胀和缩小的动画效果来显示和移除 controller,Uber的就是这种取消操作的方式。
KYFloatingBubble – 类似iOS7中Game Center浮动气泡的效果。
DKNightVersion – DKNightVersion 是一个支持夜间模式切换的框架。
EasyUIControl – 一个可以简化界面ui的控件框架。
LxGridView-oc LxGridView-swift – 利用UICollectionView模仿iOS系统桌面图标的交互,作用如动图。
QQBtn – 仿QQ未读消息弹性按钮动画,达到和手机QQ未读信息一样的动画效果,效果基本实现。
GMStepper – swift 带动画效果、支持手势滑动操作的步进标签。
TZStackView – OS 9 UIStackView 功能模拟实现于 iOS 7/ iOS 8 内。
LayoutTrait – swift 一个小类库。 做iPad 多任务分屏 适配的同学可以看一下。
HACursor – HACursor,是一个对横向ScrollView中的视图进行管理的UI控件。只要几行代码就可以集成类似于网易新闻对主题页面进行排序,删除操作的功能。
Ruler – 尺子。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,015评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,262评论 1 292
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,727评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,986评论 0 205
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,363评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,610评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,871评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,582评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,297评论 1 242
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,551评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,053评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,385评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,035评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,079评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,841评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,648评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,550评论 2 270

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 11,613评论 4 59
  • 认识你愈久,便愈发觉得你是我人生中一处清喜的水泽。 不受世事所扰,没有蝇营狗苟,澄澈干净。 那些晚睡的夜里,以及对...
    邮差_阅读 274评论 0 0
  • 青丝染雪无须怕, 寒窗本就不为夸。 只愿独你心头挂, 四海为家闯天涯。
    萧北笙烟阅读 174评论 1 4
  • 化妆品是每个女人出门必备!也有个别的纯天然― 素颜^_^ 就拿我来说,没生宝宝前,无论出门干嘛自己一定要化妆才出门...
    智慧的李青桦阅读 435评论 0 0
  • 从我刚开始理解社会到今天,也就是上世纪九十年代末到二十一世纪,我认为,我们的人生价值观正在发生改变,其中很有代表性...
    雅楠原创阅读 776评论 2 4