iOS 中 常用的第三方库

来源:互联网 发布:nginx 添加ip黑名单 编辑:程序博客网 时间:2024/05/17 22:55
原文链接
  • 一、基本流程使用的第三方轮子
  • 二、列表相关的轮子
  • 三、图片相关的轮子
  • 四、其他可能用的轮子

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


基本流程使用的第三方轮子
  • 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: 搜索类中,有热门标签、历史记录标签。

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第三方资源