iOS、mac开源项目及库汇总

这篇博客详细列举了iOS和macOS开发中常用的开源项目和库,涵盖UI、动画、网络、数据处理等多个领域,包括下拉刷新、模糊效果、AutoLayout、图表组件以及各种手势和交互效果的实现。此外,还提到了一些完整的项目示例,如聊天应用和完整版的App。
摘要由CSDN通过智能技术生成
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 - 封装了一下,使用的时候只要两行代码。一些动画的飞机稿,都是一些单独分离出来的用于测试的子动画,现在统一归类一下。 
模糊效果 
  • FXBlurView -be 支持iOS5.0以上版本,支持静态、动态模糊效果,继承与UIView的模糊特效。 
  • VVBlurPresentation -很简单易用的在原来viewconntroller基础上做模糊,然后present新的viewcontroller的。 
  • UICustomActionSheet - 通过模糊背景来着重强调与菜单相关的元素--对话框 里面已经收藏。 
  • SABlurImageView - 支持渐变动画效果的图像模糊化类库。P.S. 与前几天推存类库 SAHistoryNavigationViewController 是同一位作者。 
AutoLayout 
富文本 
  • RTLabel - 富文本。 
  • 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# 等关链词(提供响应扩展)。实用的标签文本小组件。 
图表 
  • 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,说明。 
表相关 
  • SWTableViewCell - 国内开源作者,带很多手势的表单元格。 
  • MCSwipeTableViewCell - 带很多手势的表单元格。 
  • TMQuiltView - 瀑布流。 
  • WaterfallFlowDemo - 一个简单的UICollectionView瀑布流布局演示demo。 
  • XLForm - 很多表格类的table,写法更高冷一点,推荐使用。 
  • 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开发真是很简单,大部分时间搭积木就可以了。官方网站。 
  • 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版本。 
  • 横向展示文本内容的自定义cell - 可以横向展示文本内容的自定义cell,根据文本无限滚动。 
  • UITableView-FDTemplateLayoutCell - UITableView-FDTemplateLayoutCell 是一个方便缓存 UITableViewCell 的高度的框架。 
  • ExpandingStackCells - 采用 UIStackView 实现表格单元格扩展内容显示示例及解决方案。 
  • Sapporo - swift 单元格模型驱动的集合视图管理器组件。又一个超实用的“轮子”。 
  • MDIHorizontalSectionTableViewController - 根据产品需求开源了一个交互项目,可以理解为横向Section的TableView,section和cell同时支持拖拽,后续安卓版本也会开源出来。 
  • JZNavigationExtension - 多功能导航控制器,可以透明返回栏。 
  • QuickRearrangeTableView - 基于 UITableView 的快速重排功能扩展子类。通过长按选定单元格然后滚动移动到指定位置。 
隐藏与显示 
  • SlideTapBar - 滚动栏菜单,向上滚动时隐藏tabbar,向下滚动马上显示tabbar。 
  • FoldingTabBar.iOS - 可折叠Tab Bar和Tab Bar Controller。 
  • LTNavigationBar - LTNavigationBar为app导航栏添加动态着色效果,可自定义其背景色。Demo包含:1.变换背景色;2.滚动视图,导航栏和状态栏重叠。 
  • BLKFlexibleHeightBar - 固定Header的效果库。。 
HUD与Toast 
  • MBProgressHUD - 最多人用的loading。 
  • SVProgressHUD - SVProgressHUD的loading,如果你需要定制化的等待提示器,这个就是了(也许是最好的)。。 
  • ProgressHUD - ProgressHUD的loading,使用最简单。 
  • MMProgressHUD - 设置HUD出现和消失的方式(包括上下、左右、淡入淡出、放大缩小等等),设置HUD的内容(可以在HUD中加入帧动画、动态图片等等),设置HUD出现时的底部覆盖层颜色,等等。总而言之,这是一份集大成的HUD代码。慢慢看视频吧,囊括了所有效果。 
  • WSProgressHUD - 一个小巧精致的HUD,支持添加到自定义View上, 还有更多小细节.。 
对话框 
  • WCAlertView - 自定义的对话框。 
  • IOS7AlertView - IOS7AlertView的对话框。 
  • AMSmoothAlert - 动画效果不错,最多star,但不支持arm64。 
  • DQAlertView - 扁平化的样式不错。 
  • HHAlertView - 一个简易的alertview 有三种样式,有成功,失败,和警告三种样式,支持Delegate和block两种回调。 
  • MJPopupViewController - 实现弹出视图的各种弹出和消失效果,包括淡入淡出(fade in,fade out),从屏幕上方飞进,下方飞出,从屏幕左方飞进,右方飞出等等效果,弹窗。 
  • EasyTipView - 弹出提示框类及演示示例。同样地,API 简单、易用。好“轮子”,弹窗。
  • kxmenu - kxmenu弹出菜单,点击视图上任意位置的按钮,会弹出一个菜单,并且有个小箭头指向点击的按钮,类似气泡视图。弹出的菜单位置会根据按钮的位置来进行调整。 
  • QBPopupMenu - QBPopupMenu弹出菜单,实现类似 UIMenuItem 的弹出菜单按钮。点击按钮,会弹出一个菜单,上面可以排列多个按钮。纯代码实现,不需要任何图片。 
  • STModalDemo - 弹出视图(通知,提示,选择,窗口)。 
  • TAOverlay - TAOverlay可通过叠加层展示有用的信息,可自定义文本和背景色,添加阴影和模糊效果,以及更改字体大小或者用自定义图片替换页面上的icon。 
  • UICustomActionSheet - 通过模糊背景来着重强调与菜单相关的元素--模糊效果 里面已经收藏。 
  • ActionSheetPicker-3.0 - 该项目是此前热门项目ActionSheetPicker的新版本,快速复制了iOS 8上的下拉 UIPickerView/ActionSheet功能。 
  • MJAlertView - 3D效果转场效果警示图--MJAlertView。 
  • 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。 
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值