一、前言
自己从事iOS开发工作接近两年左右的时间了,在自己工作之余,收集整理了一些优秀的三方开源框架,自己整理的这些三方开源库涵盖了iOS开发面很多方面的知识。非常感谢这些开源库的作者们,正是因为这些库,提高了我们的开发效率,同样也是我们学习进步的源泉。现将这个整理工程文件分享出来,希望能给需要的朋友一些帮助,同时也自己也做下收集记录。
Github:WBCollectOCThirdLib
二、Objective-C三方开源库
表格侧滑菜单
类似系统侧滑菜单
MGSwipeTableCell - 6300 star类似系统侧滑菜单
SWTableViewCell - 7088 star类似系统侧滑菜单
ZJSwipeTableView - 7 star表格高度缓存库
AutoLayout自动布局高度缓存库,提高滑动流畅性
FDTemplateLayoutCell - 8992 star
HYBMasonryAutoCellHeight - 595 star表格刷新控件
MJRefresh - 12006 star
KafkaRefresh - 627 starFully customizable pull-to-refresh control inspired by Storehouse iOS app
CBStoreHouseRefreshControl - 4015 star
弹出菜单(类似微信弹出菜单)
FTPopOverMenu - 712 star
kxmenu - 1776 star
PopMenuTableView - 217 star一个泡泡风格的提示框开源控件, 继承自UIView
CMPopTipView - 2740 star
快速集成自定义弹出视图,可配置常用弹出动画样式
FFPopup - 449 star
导航栏
一个优秀的全屏侧滑返回手势库
FDFullscreenPopGesture - 5010 star
KMNavigationBarTransition - 2549 star
RTRootNavigationController - 1333 star导航栏渐变库
WRNavigationBar - 1852 star类似斗鱼手势返回景深效果
ScreenShotBack - 435 star
TLYShyNavBar - 3769 star
YPNavigationBarTransition - 524 star
A custom UINavigationBar for smooth switching between various states, including bar style, bar tint color, background image, background alpha, bar hidden, title text attributes, tint color, shadow hidden...
HBDNavigationBar - 1020 star
动画
lottie-ios - 14103 star
pop - 19064 star优雅基础动画链式调用
LSAnimator 1238 star多种转场动画集合库
VCTransitionsLibrary - 4528 star
数字动画
UICountingLabel - 1643 star
分段控件
HMSegmentedControl - 3392 star腾讯新闻、今日头条、QQ音乐、网易云音乐、京东、爱奇艺、腾讯视频、淘宝、天猫、简书、微博等所有主流APP分类切换滚动视图
JXCategoryView - 3716 star
QQ、淘宝、微博、腾讯、网易新闻、今日头条等标题滚动视图
SGPagingView - 1235 star
富文本编辑
ZSSRichTextEditor - 2891 star弹幕
HJDanmakuDemo - 717 star一个 iOS 上的弹幕渲染库
BarrageRenderer - 1777 star
滚动视图
SwipeView - 2611 star滚动视图悬浮效果
HJTabViewController - 191 starScrollView嵌套ScrolloView(UITableView 、UICollectionView)解决方案, 支持OC / Swift
LTScrollView - 679 stariOS类似微博、抖音、网易云等个人详情页滑动嵌套效果
GKPageScrollView - 374 star
类似微博主页、简书主页等效果。多页面嵌套,既可以上下滑动,也可以左右滑动切换页面。支持HeaderView悬浮、支持下拉刷新、上拉加载更多。
JXPagingView - 898 star
类似半糖、美丽说主页与QQ音乐歌曲列表布局效果,实现不同菜单的左右滑动切换,同时支持类似tableview的顶部工具栏悬停
SwipeTableView - 2029 star
红点提示
JSBadgeView - 1209 star
WZLBadge - 1603 star键盘
一个强大键盘管理库,推荐项目集成使用
IQKeyboardManager - 11697 star
MMNumberKeyboard - 911 star
TPKeyboardAvoiding - 5568 star仿微信键盘封装
TLKeyboard - 46 star
界面布局
FlexLib - 496 stariOS原生布局AutoLayout封装
Masonry - 16526 star
SDAutoLayout - 5241 star
WHC_AutoLayoutKit - 786 starMyLayout是一套iOS界面视图布局框架。MyLayout的内核是基于对UIView的layoutSubviews方法的重载以及对子视图的bounds和center属性的设置而实现的。MyLayout功能强大而且简单易用,它集成了:iOS Autolayout和SizeClass、android的5大布局体系、HTML/CSS的浮动定位技术以及flex-box和bootstrap框架等市面上主流的平台的界面布局功能,同时提供了一套非常简单和完备的多屏幕尺寸适配的解决方案。
MyLinearLayout- 3534 star
Graver 是一款高效的 UI 渲染框架,它以更低的资源消耗来构建十分流畅的 UI 界面。
Graver - 1253 star
进度指示器
DACircularProgress - 2307 star
SDProgressView - 378 star开发模式
KVOController - 6524 star控制器切换
DWQListOfDifferentOrderStatus 12 star
HYPageView - 74 star
SGPagingView - 822 star
WMPageController - 2229 star
ZJScrollPageView - 847 starVTMagic is a page container library for iOS.
VTMagic - 1749 star
数据存储
A Cocoa / Objective-C wrapper around SQLite
fmdb - 12533 star
BGFMDB - 771 star
JKDBModel - 683 star
JRDB - 480 star
LKDBHelper-SQLite-ORM - 980 starAn efficient, small mobile key-value storage framework developed by WeChat. Works on iOS, Android, macOS and Windows.
MMKV - 8248 star
数据转模型
MJExtension - 7667 star
YYModel - 3589 star
Mantle - 11023 star
jsonmodel - 6559 star
GDataXML-HTML - 261 star搜索
PYSearch - 2976 star提示框架
MBProgressHUD - 14618 star
SVProgressHUD - 11046 star
JGProgressHUD - 2257 star
KSToastView - 91 star
MMPopupView - 1910 star
SCLAlertView - 3084 star
Toast - 3085 starUIAlertView/UIAlertController便捷调用工具
JXTAlertManager - 172 star
提醒对话框,风格和微信原生几乎零误差
SPAlertController - 259 star
A light wight UI package contains local notification, progress HUD, toast, with blur effect, elegant API and themes support.
FTIndicator - 285 star
图表绘制
AAChartKit - 2241 star
JHChart - 508 star
ZFChart - 670 star
DVPieChart - 63 star
DVLineChart - 56 starAxcAEKit系列拆分出来的一个贝塞尔曲线绘制工具,以科技风为主,动画为辅
AxcDrawPath_Tool - 398 star
图片缓存框架
SDWebImage - 22089 star
FLAnimatedImage - 6691 star
iOS-WebP - 739 star
YYWebImage - 3195 star网络图片尺寸、高度自适应/适配 - 支持异步缓存imageSize , 支持动态刷新界面
XHWebImageAutoSize - 202 star
图片浏览
MWPhotoBrowser - 8238 star
PYPhotoBrowser - 1782 star
SDPhotoBrowser - 962 star
STPhotoBrowser - 299 star
KSPhotoBrowser - 457 stariOS仿微信、今日头条等图片浏览器
GKPhotoBrowser - 471 star
iOS image browser / iOS 图片浏览器 (支持视频)
YBImageBrowser - 1451 star
图片、文字轮播
SDCycleScrollView - 4921 star
HYBLoopScrollView - 615 star
TXScrollLabelView - 497 star1、无限图片轮播功能 2、每个图片的相对偏移量,方便开发者自己封装东西 3、pageControl的几个动画,(旋转,跳跃等慢慢会增加)
DDGBannerScrollView - 49 star
SGAdvertScrollView - 445 star
A drop-in carousel view. Most of Apps put it in their first screen.
PSCarouselView - 149 star
淘宝、口碑、京东、美团、天猫等等一切滚动广告 Roll
RollingNotice - 326 star
a simple and usefull cycle pager view ,and auto scroll banner view(轮播图) ,include pageControl for iOS,support Objective-C and swift
TYCyclePagerView 1216 star
图片拾取
TZImagePickerController - 5065 star
CTAssetsPickerController - 2142 star
DNImagePicker - 365 star
HXWeiboPhotoPicker - 7 star全景图展示
HelloPanoramaGL - 39 starGoogle VR SDK for iOS
gvr-ios-sdk - 622 star
It is a lite library to render 360 degree panorama video for iOS. VR Player.
MD360Player4iOS - 706 star
网络请求
AFNetworking - 31246 star
YTKNetwork - 5385 star
PPNetworkHelper - 1180 star
HYBNetworking - 541 star
SJNetwork - 153 star基于 AFNetworking 网络中间层,注重性能,设计简洁,易于拓展
YBNetwork - 103 star
网络状态监测
Reachability - 6665 star文件下载
TWRDownloadManager - 366 star
ZFDownload - 291 starCarousel效果
iCarousel - 10628 star
NewPagedFlowView - 512 starHJCarouselDemo - 428 star
仿新浪新闻首页重力卡片式轮播
TXCarouselView - 114 star
音视频
ijkplayer - 19602 star
ZFPlayer - 4539 star
WMPlayer - 2397 star
TBPlayer - 1125 star
TTAVPlayer - 118 starVideo Player. Support cocoapods & Generate GIF & Export & Localization & Play in View(UIView || TableHeader || TableCell || CollectionCell) & Keyboard Orientation & StatusBar(Style&Hide)
SJVideoPlayer - 1072 star
Automatic play video & cache video data in UITableView like Weibo and Douyin.
JPVideoPlayer - 1978 star
占位图
DZNEmptyDataSet - 10439 star
LYEmptyView - 657 starSomo is a iOS Skeleton-style animation library that's simple enough,and in objective-c
Somo - 278 star
TABAnimated - 1425 star
C语言扩展库
libextobjc - 3936 starSocket编程
CocoaAsyncSocket - 10193 star
SocketRocket - 7833 star
socket.io - 42419 star
MQTTKit - 407 star内存泄露检测工具
MLeaksFinder - 3568 star
FBRetainCycleDetector - 3068 starYYKit
A collection of iOS components.
YYKit - 12185 star
LOG工具
CocoaLumberjack - 10382 star输入框占位符
一个实用的设置UITextView占位文字分类
UITextView-Placeholder - 797 star
RPFloatingPlaceholders - 1115 star
SZTextView - 652 star分类
JKCategories - 2770 star图像处理
GPUImage - 17606 starA view controller for iOS that allows users to crop portions of UIImage objects
TOCropViewController - 3153 star
iOS开发知识集合
iOS-Tips - 2187 star
iOS-InterviewQuestion-collection - 1019 star安全防护
强大的防止crash框架,不改变原代码支持KVO自释放,可以检测到dealloc时未释放的kvo,等19种crash
LSSafeProtector - 505 star
常用crash防护框架,配置简便,推荐集成使用
JJException - 829 star
It's a library can avoid some crash in iOS project written by Objective-C
XXShield - 612 star
Swizzle commonly used function of Foundation container to prevent nil crash
NSObjectSafe - 416 star
表单
XLForm - 5555 star
富文本相关
富文本创建链式调用
SJAttributesFactory - 347 star
一个富文本编辑器
ZSSRichTextEditor - 3285 star
截屏
一句代码保存截图,将 UIScrollView UITableView UICollectionView UIWebView WKWebView 网页 保存 为 长图 查看
TYSnapshotScroll - 505 star
界面动态化方案
Tangram is a modular UI solution for building native page dynamically, including Tangram for Android, Tangram for iOS and even backend CMS. This project provides the sdk on iOS platform.
Tangram-iOS - 1551 star
An iOS ScrollView to resolve the problem of reusability in views.
LazyScrollView - 1655 star
框架搭建
AxcAE_TabBar,特效TabBar,以开放为封装核心的TabBar组件,尽量将属性、API等参数全部开放给使用者,能够很方便快速使用的一个TabBar选项卡组件
AxcAE_TabBar - 371 star
【中国特色 TabBar】一行代码实现 Lottie 动画TabBar,支持中间带+号的TabBar样式,自带红点角标,支持动态刷新。
CYLTabBarController - 5730 star
瀑布流
标签流显示控件,同时支持文字或自定义View
TTGTagCollectionView - 1186 star
A data-driven UICollectionView framework for building fast and flexible lists.
IGListKit - 10490 star
启动屏
一行代码实现启动广告页
LSLaunchAD - 18 star
开屏广告、启动广告解决方案-支持静态/动态图片广告,mp4视频广告,全屏/半屏广告、兼容iPhone/iPad.
XHLaunchAd - 3022 star
筛选
仿京东/美团电商筛选菜单 电商筛选菜单 电商通用筛选菜单
GHDropMenu - 424 star
数据加密解密
一个用于代码混淆和字符串加密的Mac小Demo
MJCodeObfuscation - 322 star
Encrypt/Decrypt: AES. Hash: MD5, SHA(SHA1, SHA224, SHA256, SHA384, SHA512). Encode/Decode: Base64, Hex.
CocoaSecurity - 1040 star
多种加密解密
Encryptions - 322 star
索引&分组
SCIndexView provide a index view like Wechat.
SCIndexView - **422 **
网页进度条
AXWebViewController is a webViewController to browse web content inside applications. It’s a lightweight controller on iOS platform based on WKWebView (UIWebView would be the base Kit under iOS 8.0).
AXWebViewController - 698 star
RxWebViewController - 1273 star
响应式编程
The 2.x ReactiveCocoa Objective-C API: Streams of values over time
ReactiveObjC - 2020 star
EasyReact 是一个简单易用的响应式编程库。
EasyReact - 1579 star
协程编程
coobjc provides coroutine support for Objective-C and Swift. We added await method、generator and actor model like C#、Javascript and Kotlin. For convenience, we added coroutine categories for some Foundation and UIKit API in cokit framework like NSFileManager, JSON, NSData, UIImage etc. We also add tuple support in coobjc.
coobjc - 3378 star
学习框架推荐
高仿微信
TLChat - 710 star
VVebo剥离的TableView绘制
VVeboTableViewDemo - 2676 star
iOS project of collected some demos for iOS App, use Objective-C
iOSProject - 5123 star
组件化开发
The mediator with no regist process to split your iOS Project into multiple project.
CTMediator - 2846 star
URL routing library for iOS with a simple block-based API
JLRoutes - 5112 star
一个高效/灵活的 iOS URL Router
MGJRouter - 2029 star
AOP
Delightful, simple library for aspect oriented programming in Objective-C and Swift
Aspects - 7513 star
QMUI
QMUI iOS——致力于提高项目 UI 开发效率的解决方案
QMUI_iOS - 4745 star
Web网页H5
VasSonic is a lightweight and high-performance Hybrid framework developed by tencent VAS team, which is intended to speed up the first screen of websites working on Android and iOS platform.
VasSonic - 10168 star
An iOS/OSX bridge for sending messages between Obj-C and JavaScript in UIWebViews/WebViews
WebViewJavascriptBridge - 12663 star
贝塞尔曲线
Provides an iOS view controller allowing a user to draw their signature with their finger in a realistic style.
UberSignature - 1040 star
工具
Mac上iOS开发辅助工具,快速把json/xml数据转换生成对应模型类属性,省去麻烦手动创建,提高开发效率。
WHC_DataModelFactory - 1040 star
📱📲iOS中获取各种设备信息🆔的方法总结(iPhone XS Max 已更新)
iOS-getClientInfo - 598 star
三、结语
上面这些三方开源库按照自己的理解分类整理了一遍,其中OC语言库居多,自己现在也是基于OC开发,Swift收集的相对较少,这些库也是自己现在所了解到的,当然还有很多优秀的三方库自己也未发现和接触,我以后会不断在这篇博客中更新优秀的三方开源库。