iOS 中 常用的第三方库 (转载)

 

轮子图

现在对于我们 iOS 开发来说,基本上说不可能不使用第三方轮子啦,毕竟没那么多时间,而且自己造的轮子往往想着成为上图中的最后一个,结果却成了上图中第二个或第一个啦,当然大公司另当别论。下面我从之前用过的第三方轮子和看到不错的轮子进行总结一下。

一、基本流程使用的第三方轮子

二、列表相关的轮子

三、图片相关的轮子

四、其他可能用的轮子

一、基本流程使用的第三方轮子

基本流程使用的第三方轮子

Reachability

Masonry

SnapKit

AFNetworking

Alamofire

YTKNetwork

YYModel

Mantle

JSONModel

SwiftyJSON

MBProgressHUD

SVProgressHUD

JGProgressHUD

FMDB

Realm

上述是有重复同一功能的,而如何选择呢,这个我们可以根据项目的具体情况来确定。

二、列表相关的轮子

列表相关的轮子

MJRefresh

EGOTableViewPullRefresh:(这个不更新了,但刚开始用就是它,有感情)

SVPullToRefresh

DZNEmptyDataSet

CHTCollectionViewWaterfallLayout

UICollectionViewLeftAlignedLayout

UITableView+FDTemplateLayoutCell

SWTableViewCell

RETableViewManager: 自定义TableView 多种类型的展示。

其他还有很多类似功能的,这是我个人从中选择的几个,后续添加中......

三、图片相关的轮子

图片相关的轮子

YYWebImage

SDWebImage

MWPhotoBrowser

IDMPhotoBrowser

HUPhotoBrowser

QBImagePicker

CTAssetsPickerController

TZImagePickerController: 很赞,很实用。

FastImageCache:加载图片速度的优化,很厉害

PS:简友CoderKo1o加:PYPhotoBrowser(图片浏览,功能完善中···)

此处Browser 和 Picker 功能是有些重复的,还是看项目需求来选择吧。

四、其他可能用的轮子

4-1、偏工具类的轮子

####### 键盘上移

IQKeyboardManager:零行代码解决键盘上移的问题

####### 图表

PNChart:各种图表的展示

Charts:Swift Charts

####### 侧滑

MMDrawerController:侧边栏的 Controller

RESideMenu: QQ 侧边栏的效果

ENSwiftSideMenu: 简洁版的侧滑菜单

####### 聊天

UUChatTableView:聊天对话的时候,可以参考

JSQMessagesViewController:也是聊天对话的,个人认为更适合

####### 蓝牙

BabyBluetooth: 一个易使用的蓝牙库

BluetoothKit: 让我们更容易的操作蓝牙的封装库,Swift

####### 头部TabBar

VTMagic: 类似网易、腾讯等应用的菜单分页组

DLSlieView:也是类似网易上部选择导航的效果

HMSegmentedControl:选择 (可以和DLSlieView比较一下)

GUITabPagerViewController: 也是上部 tabBar 点击或滑动的效果

WMPageController: 同上顶部导航VC 切换

####### 底部TabBar

ESTabBarController: TabBar 的超多样式

CYLTabBarController: 号称低耦合集成TabBarController

####### 富文本

TTTAttributedLabel: 富文本的Label

TYAttributedLabel: 这个富文本貌似更直观些,可以和上面这个对比下

M80AttributedLabel: 这个也是可以瞧瞧的

ZSSRichTextEditor: 编辑富文本,棒棒的

####### 小控件

JSBadgeView:类似系统的 Badge,购物车时常用

JVFloatLabeledTextField: 特殊效果的textField

TextFieldEffects: 有标注的textFiled

VBFPopFlatButton: 各种稀奇古怪的动画button

FXBlurView:对视图进行模糊操作

SDCycleScrollView: 循环轮播

SCLAlertView: 自定义的UIAlertView,更漂亮哦

Shimmer:具有闪烁效果的第三方控件

####### 杂七杂八的

SAMKeychain: 保存keychain的

AESCrypt-ObjC: AES 加密/解密

Mobileplayer-ios: Swift 媒体播放器

PDTSimpleCalendar: 日历

PYSearch: 搜索类中,有热门标签、历史记录标签。

LBXScan: 二维码相关,ZXing、ZBar、iOS系统AVFoundation扫码封装,可自行选择。

4-2、不一定常用,但很有意思的一些动画轮子

CBStoreHouseRefreshControl:刷新时,不一样的动画

LTMorphingLabel:很cool 的文字展示

ZLSwipeableView: 不一样的翻页效果

Animated-tab-bar: 有动画的tabBar

Hamburger-button: 变换的 Button,个人比较喜欢

Folding-cell:点击Cell 时,有折叠的动画效果,很赞

4-3、另外一些第三方库,大

JSPatch:热修复,为项目动态添加模块,或替换项目原生代码动态修复 bug

ReactiveCocoa: 函数响应式编程,使用 MVVM 搭

RxSwift:Swift 函数响应式编程框架。

BlocksKit: blocks 包,喜欢用 Block的非常适合,学习 block 的好库。

JKCategories:iOS 中常用到的 Category ,可以好好学习

YYKit:庞大、丰富的 iOS 组件,也是学习的好地方。

CocoaAsyncSocket:异步 socket 通讯类库

GPUImage:图片过滤

AsyncDisplayKit:将图像解码、布局以及渲染操作放在后台线程,带来更好的用户交互体验的框架。

PromiseKit: 一个用来出来异步的编程框架(Swift)

暂时大部分记录的还是 Objective-C 相关的, 说真的 github 上还有好多优秀的轮子等待我们挖掘,当然有好的轮子也希望可以多互相分享,此处持续添加中······。

话又说回来,我个人还是一向遵循尽量用苹果本身提供的 API 的原则,虽说与上面有矛盾。毕竟引入一个第三方库有时还是有一些不确定的因素的,如果可能,尽量自己开发和实现相应的功能,第三方库尽量只作为参考。 (当然一切以开发速度为第一的情况下,那就先用吧)

PS: 备注 下面链接中还有一些我们可能会用到的,超多超全:

1、某公司用到的一些 iOS 开源库和第三方组件

2、TimLiu-iOS, 超多都看不过来

3、整理常用的iOS第三方资源。

你可能感兴趣的:(iOS 中 常用的第三方库 (转载))