前言
一个APP的诞生肯定少不了站在巨人的肩膀上,所以使用这些开源的库,可以让你的开发更加的顺利,快速。
网络请求
-
Alamofire (Swift)
封装好的网络请求参考这里 - AFNetworking (OC)
-
SwiftyJSON (Swift)
Swift中网络请求的数据处理,使用起来非常非常方便,文档中用法也非常详细
MVC(Model数据转模型相关)
-
ObjectMapper(Swift)
Swift中Model数据转模型使用,是MVC架构中绑定数据很有用的框架
使用方法参考 -
EZSwiftExtensions(OC)
OC 中数据转模型使用框架,具体用法Github上也有详细的讲解 -
MJExtension(OC)
转换速度快、使用简单方便的字典转模型框架 -
AlamofireObjectMapper
配合** ObjectMapper**使用的网络请求扩展 -
MBNetWork
基于 Alamofire 封装的网络请求库,可以更方便地在视图上展示请求状态。配合Alamofire,ObjectMapper,AlamofireObjectMapper使用 -
HandyJSON(Swift)
HandyJSON是一个用于Swift语言中的JSON序列化/反序列化库。
与其他流行的Swift JSON库相比,HandyJSON的特点是,它支持纯swift类,使用也简单。它反序列化时(把JSON转换为Model)不要求Model从NSObject继承(因为它不是基于KVC机制),也不要求你为Model定义一个Mapping函数。只要你定义好Model类,声明它服从HandyJSON协议,HandyJSON就能自行以各个属性的属性名为Key,从JSON串中解析值。
图片加载
- SDWebImage(OC)
-
Kingfisher (Swift)
网络图片加载,可以添加默认图片等,会对网络图片进行缓存
界面布局
-
Masonry(OC)
布局约束非常好用的框架,详情参见github -
SnapKit (Swift)
布局约束非常好用的框架,为Masonry的Swift版,详细的用法可参考航哥知识平台
键盘
-
IQKeyboardManager (Swift&&OC)
你还在为处理键盘的弹出收起而苦恼吗?处理键盘遮挡问题,谁用谁知道,导入即可使用,不用增加代码。
//几个属性,可在某些特殊界面定制
#import <IQKeyboardManager/IQKeyboardManager.h>
[IQKeyboardManager sharedManager].enable = YES; //是否启用
[IQKeyboardManager sharedManager].enableAutoToolbar = YES;//是否显示上面的toolbar
[IQKeyboardManager sharedManager].shouldResignOnTouchOutside = NO;//是否点击空白区域隐藏键盘
界面
-
MBProgressHUD (OC)
HUD&Toast的显示,最好是自己封装下再使用,封装参考 -
iCarousel (OC)
滑动轮播图,可实现多种样式的滑动轮播效果 -
CNPPopupController(OC)
弹窗,比较轻便的一个pop组件,用起来还不错 -
EasyTipView(Swift&&OC)
屏幕快照 2016-12-29 上午10.59.49.png
友好地对用户展示操作提示库
-
XLActionController(Swift)
样式丰富的 Action Sheet 组件。 -
LCActionSheet(OC)
仿微信的Action sheet组件
navigationBar&&statusBar
-
FDFullscreenPopGesture(OC)
丝滑的处理导航栏的显示和隐藏,直接导入项目中,不需要加入一行代码,下面是比较常用的两个设置。
//单个viewController 关闭侧滑手势
self.fd_interactivePopDisabled = YES;
//隐藏NavBar
self.fd_prefersNavigationBarHidden = YES;
-
WRNavigationBar(OC)
超简单!!! 一行代码设置状态栏、导航栏按钮、标题、颜色、透明度,移动等 -
WELCustomStatusbarColor
一行代码更改状态栏的颜色
动画
-
spruce-ios(Swift)
轻便的动画库,可以尝试使用,让app更吸引人
刷新
-
MJRefresh(OC)
上拉加载,下拉刷新,可以自定义实现多种样式
日期选择器
-
DatePicker(OC)
很方便实用的一个日期选择器 -
SZCalendarPicker(OC)
按日展示的日期选择器
工具
-
TalkingData
移动数据服务平台,可以对app进行多方面的监测,用于统计数据分析等。 -
信鸽推送
顾名思义,是移动App推送平台 -
ShareSDK
提供社会化功能,集成了一些常用的类库和接口,缩短开发者的开发时间,还有社会化统计分析管理后台,支持包括QQ、微信、新浪微博、腾讯微博等国内外40多家的主流社交平台,帮助开发者轻松实现社会化分享、登录、关注、获得用户资料、获取好友列表等主流的社会化功能。 -
腾讯Bugly
腾讯Bugly,为移动开发者提供专业的异常上报,运营统计和内测分发解决方案,帮助开发者快速发现并解决异常,同时掌握产品运营动态,及时跟进用户反馈。
存储相关
-
SwiftyUserDefaults
对UserDefaults做了进一步的封装,使用起来比较方便。
相机相册图片处理
-
PhotoPicker(Swift)
类似微信的实现照片多选的功能 -
TZImagePickerController(OC)
一个支持多选、选原图和视频的图片选择器,同时有预览、裁剪功能
其他
-
OCR(OC)
身份证扫描,识别速度特别快,可以快速识别出身份证正反面所有的信息,但是使用了这个框架后就不能用模拟器进行运行程序了,会报错,具体解决办法我也没找到,如果你解决了请留言给我,谢谢。 -
card.io-iOS-SDK
银行卡识别框架,具体使用参考 -
PPGetAddressBookSwift
通讯录的处理,可以自己设置通讯录排列样式 -
EZSwiftExtensions
swift中的各种Extensions,总有方便你使用的 -
KMCGeigerCounter(OC)
监测app的卡顿情况,具体介绍参考
注:使用时注意文章最后的PS,加在AppDelegate中会报错的,要加载viewController中 -
MLeaksFinder(OC)
监测app有无内存泄漏情况,直接导入就可以,不用添加任何代码,在有内存泄露的界面就会弹出窗口提醒。
网友评论