iOS项目中常用第三方库超全总结

来源:互联网 发布:三年大饥荒知乎 编辑:程序博客网 时间:2024/06/03 22:51
 

iOS项目中常用第三方库超全总结

标签: ios库框架编程响应式
 504人阅读 评论(1) 收藏 举报
 分类:
 

目录(?)[+]

常用第三方

今天就给大家总结一下,我们在项目中用到最多的第三方,免去了大家花时间去搜索,在这里大家进行了全面的总结.

1. 编程框架

1:基于响应式编程思想的oc 
地址:https://github.com/ReactiveCocoa/ReactiveCocoa

2:iOS快速简单集成国内三大平台分享 
地址:https://github.com/xumeng/XMShareModule

2. 加载提示

1:hud提示框 
地址:https://github.com/jdg/MBProgressHUD

2:状态栏提示框 
地址:https://github.com/jaydee3/JDStatusBarNotification

3:弹出窗 
地址:https://github.com/sberrevoets/SDCAlertView

4:下拉上拉刷数据 
地址:https://github.com/CoderMJLee/MJRefresh

5:下拉菜单插件 
地址:https://github.com/dopcn/DOPDropDownMenu/

6:CBStoreHouseRefreshControl:一个效果很酷炫的下拉刷新控件 
地址:https://github.com/coolbeet/CBStoreHouseRefreshControl

3. 控件布局

1:有文字输入时,能根据键盘是否弹出来调整自身显示内容的位置 
地址:https://github.com/michaeltyson/TPKeyboardAvoiding

2:Masonry代码布局 
地址:https://github.com/SnapKit/Masonry

3:Button的样式 
地址:https://github.com/mattlawer/BButton

4:五项能力值展示的五边形 
地址:https://github.com/dsxNiubility/SXFiveScoreShow

5:自动计算表格行高 
地址:https://github.com/forkingdog/UITableView-FDTemplateLayoutCell

6:底部TabBar 
地址:https://github.com/robbdimitrov/RDVTabBarController

7:表情面版 
地址:https://github.com/ayushgoel/AGEmojiKeyboard

8:记录框架 
地址:https://github.com/CocoaLumberjack/CocoaLumberjack

9:基于Masonry自动计算行高扩展 
地址:https://github.com/632840804/HYBMasonryAutoCellHeight

10:给任意UIView视图四条边框加上阴影,可以自定义阴影的颜色、粗细程度、透明程度以及位置(上下左右边框) 
地址:https://github.com/Seitk/UIView-Shadow-Maker

3. 图片处理

1:图片加载 
地址:https://github.com/rs/SDWebImage

14:动画效果的启动页 
地址:https://github.com/IFTTT/JazzHands

4. 表单验证

1:自动识别网址号码邮箱和表情的label 
地址:https://github.com/molon/MLEmojiLabel

2:IM对话功能的封装 
地址:https://github.com/ZhipingYang/UUChatTableView

3:字典转模型框架 
地址:https://github.com/CoderMJLee/MJExtension

5. 网络检查

1:验证网络连接状态 
地址:https://github.com/tonymillion/Reachability

2:block工具包。将很多需要用delegate实现的方法整合成了block的形式 
地址:https://github.com/zwaldowski/BlocksKit

6.图表展示

1:图表统计展示 
地址:https://github.com/kevinzhow/PNChart

2:表格空白提示插件 
地址:https://github.com/dzenbot/DZNEmptyDataSet

7: 时间日历

1:时间帮助插件,可以快速获取时间,比较,增加等操作 
地址:https://github.com/MatthewYork/DateTools

2:不错的日期时间插件 
地址:https://github.com/CoderXL/UUDatePicker

8:引导图

1:比较不错的引导页面插件 
地址:https://github.com/ealeksandrov/EAIntroView

2:快速集成新手引导的类库 
地址:https://github.com/StrongX/XSportLight

3:设置页面的封装 
地址:https://github.com/renzifeng/ZFSetting

9: 二维码

1:扫描二维码,仿微信效果,带有扫描条 
地址:https://github.com/JxbSir/JxbScanQR

2、ZBar 
ZBar 是款桌面电脑用条形码/二维码扫描工具,支持摄像头及图片扫描,支持多平台包括 iPhone 手机。同时 ZBar提供了二维码扫描的 API 开发包。 
https://github.com/ZBar/ZBar

3、ObjQREncoder 
ObjQREncoder 是 Objective-C 的二维码的编码器,用于生成二维码图像。 
https://github.com/jverkoey/ObjQREncoder

9: 与HTML5交互

1:IOS与javascript交互 
地址:https://github.com/marcuswestin/WebViewJavascriptBridge

10: 搜索跳转

1:搜索历史标签 
地址:https://github.com/zhiwupei/SearchHistory

2:两个APP跳转的插件 
地址:https://github.com/usebutton/DeepLinkKit

3: 不错的链式动作 
地址:https://github.com/jhurray/JHChainableAnimations

11:数据存储转化

1:本地存取NSUserDefaults插件 
地址:https://github.com/gangverk/GVUserDefaults

2:NSArray 和 NSDictionary关于LINQ的操作方式,封装一些常用的操作 
地址:https://github.com/ColinEberhardt/LinqToObjectiveC

12: 评分

1:appStore评分 
地址:https://github.com/arashpayan/appirater

12. 网络请求

1、ASIHTTPRequest 
这是一个经典的老库,功能完全而强大,但已经停止更新很久了(iOS5.0停止更新,但是我最近看github上这个项目有新改动)。在不同iOS版本上略微有一些小问题(提醒显示上的),所以用的时候还是稍微修改一下比较好。 
下载地址:https://github.com/pokeb/asi-http-request

2、AFNetworking 
轻量级的通讯类库,使用非常简单。 
下载地址:https://github.com/AFNetworking/AFNetworking

3、MKNetworkKit 
最近做的不错的一个通讯类库,具有AFNetworking和ASIHTTPRequest双方的优点,甚至功能更丰富一些,但是本人还没有使用过。 
下载地址:https://github.com/MugunthKumar/MKNetworkKit

4、可以监控网络请求的内容 
地址:https://github.com/coderyi/NetworkEye

5:一个开源的AFnetworking上层的封装(猿题库等运用) 
地址:https://github.com/yuantiku/YTKNetwork

6:AFNetworking-RACExtensions:针对ReactiveCocoa的AF封装 
地址:https://github.com/CodaFi/AFNetworking-RACExtensions

13. Socket

1、CocoaAsyncSocket 
CocoaAsyncSocket是用的最广泛的socket开发库,省略了程序员与CFNetwork接触的时间,延长了程序员寿命。 
下载地址:https://github.com/robbiehanson/CocoaAsyncSocket

2、SocketRocket 
SocketRocket是Square开发的一个实现webSocket的库,可以轻松的实现即时通信。 
下载地址:https://github.com/square/SocketRocket

14. 数据解析

1、SBJSON 
SBJson的解析速度其实是比较慢的,但是不知道为什么它却是用的最广的。 
下载地址:

2、JSONKit 
JSONKit解析速度上最接近iOS原生解析类,当然iOS5.0才开始支持原生解析,所以选择一个库还是很必要的。 
下载地址:https://github.com/johnezang/JSONKit

3、TouchJSON 
TouchJSON用的也比较广泛. 
下载地址:https://github.com/TouchCode/TouchJSON

4、json-framework 
没有用过。 
下载地址:https://github.com/stig/json-framework

5、TBXML 
TBXML是一套轻量级的DOM方式的XML解析类库,有很好的性能和低内存占用,不过它不对XML格式进行校验,不支持XPath,并且只支持解析,不支持对XML进行修改。 
下载地址:https://github.com/71squared/TBXML

6、TouchXML 
TouchXML这也是一套DOM方式的XML解析类库,支持XPath,不支持XML的修改。 
下载地址:https://github.com/TouchCode/TouchXML

7、KissXML 
KissXML这是一套基于TouchXML的XML解析类库,只不过实现了支持XML的修改。 
下载地址:https://github.com/robbiehanson/KissXML

8、GDataXML 
GDataXML是Google开发的DOM方式XML解析类库,支持读取和修改XML文档,支持XPath方式查询。

9:XML/HTML解析 
地址:https://github.com/topfunky/hpple

15. 第三方管理

1、fmdb 
fmdb是一个数据库管理库,封装了sqlite相关的sql语句,简化数据库操作。 
下载地址:https://github.com/ccgus/fmdb

2、ssziparchive 
ssziparchive与sstoolkit是同一个作者,这哥们儿简直是个天才。 
https://github.com/soffes/ssziparchive

3、ZipArchive 
ZipArchive同样是minizip的封装。 
https://github.com/mattconnolly/ZipArchive

4、Objective-Zip 
Objective-Zip将Zlib和MiniZip用Objective-C进行了封装,使用起来非常简单。 
https://github.com/flyingdolphinstudio/Objective-Zip

5、zxing 
zxing是一个开源Java类库用于解析多种格式的1D/2D条形码。目标是能够对QR编码、DataMatrix、UPC的1D条形码进行解码。 其提供了多种平台下的客户端。 
https://github.com/zxing/zxing

6、OpenUDID 
OpenUDID是iOS禁止使用系统UDID之后的新解决方法。 
https://github.com/ylechelle/OpenUDID

7、RegexKitLite 
RegexKitLite 是一个轻量级的 Objective-C 的正则表达式库,支持 Mac OS X 和 iOS,使用ICU 库开发。 
https://github.com/wezm/RegexKitLite

8、STUtils 
STUtils是一系列的工具集,包含了很多对于iOS原生类的扩展,当然也包含一个用于安全保存用户密码STKeyChain。 
https://github.com/ldandersen/STUtils

9、scifihifi-iphone 
scifihifi-iphone用于安全保存用户密码到keychain中。 
https://github.com/ldandersen/scifihifi-iphone

10、sskeychain 
sskeychain同scifihifi-iphone一样,不过属于轻量级。 
https://github.com/soffes/sskeychain

11、SDWebImage 
SDWebImage调用网站上的图片,跟本地调用内置在应用包里的图片一样简单。操作也很简单。 
https://github.com/rs/SDWebImage

12、umeng 
umeng既有统计分析,也有社会化组件。但是统计分析的用户数似乎明显多于其社会化组件的用户。 
http://dev.umeng.com/analytics/ios/sdk-download

16. 动画特效

1:弹出层视图,背景效果(可以自定义视图的内容) 
地址:https://github.com/HJaycee/JCAlertView

2:圆形进度条的显示,中间可显示值 
地址:https://github.com/mdinacci/MDRadialProgress

3:很帅的数据加载动画(可以用于数据列表加载的展现) 
地址:https://github.com/NghiaTranUIT/FeSpinner

4:图文混搭 
地址:https://github.com/zhouande/TLAttributedLabel

5:可以简单展示在UINavigationBar下方,类似Music app的播放列表视图,弹出菜单视图 
地址:https://github.com/DrummerB/BFNavigationBarDrawer

6:比如筛选、模糊、优化、蒙版、调整大小、旋转以及保存等等。同时还提供了一个UIImageView子类从URL异步加载图片,并在下载完毕时展示图片。 
地址:https://github.com/Nyx0uf/NYXImagesKit

7:动效弹出视图(弹出窗里面为文字,可以定义弹出的方向,及显示的时间)–AMPopTip 
地址:https://github.com/andreamazz/AMPopTip

8:模仿新浪微博弹出菜单 
地址:https://github.com/wwdc14/HyPopMenuView

9:带箭头的弹出视图插件 
地址:https://github.com/xiekw2010/DXPopover

10:底部弹出选择 
地址:https://github.com/skywinder/ActionSheetPicker-3.0

11:模糊效果(毛玻璃) 
地址:https://github.com/nicklockwood/FXBlurView

12:表格行左右划动菜单 
地址:https://github.com/MortimerGoro/MGSwipeTableCell

二 iOS常见分类

一些必要的类别iOS开发。包括的NSDate,的NSString,NSUserDefaults的,和的UIColor帮助UIImage的方法。

1. NSDate

<code class="hljs erlang has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-pp" style="box-sizing: border-box;">-<span class="hljs-params" style="color: rgb(102, 0, 102); box-sizing: border-box;">(<span class="hljs-variable" style="box-sizing: border-box;">NSString</span> *)</span>formatWithString:<span class="hljs-params" style="color: rgb(102, 0, 102); box-sizing: border-box;">(<span class="hljs-variable" style="box-sizing: border-box;">NSString</span> *)</span>format;-<span class="hljs-params" style="color: rgb(102, 0, 102); box-sizing: border-box;">(<span class="hljs-variable" style="box-sizing: border-box;">NSString</span> *)</span>formatWithStyle:<span class="hljs-params" style="color: rgb(102, 0, 102); box-sizing: border-box;">(<span class="hljs-variable" style="box-sizing: border-box;">NSDateFormatterStyle</span>)</span>style;-<span class="hljs-params" style="color: rgb(102, 0, 102); box-sizing: border-box;">(<span class="hljs-variable" style="box-sizing: border-box;">NSString</span> *)</span>distanceOfTimeInWords;-<span class="hljs-params" style="color: rgb(102, 0, 102); box-sizing: border-box;">(<span class="hljs-variable" style="box-sizing: border-box;">NSString</span> *)</span>distanceOfTimeInWords:<span class="hljs-params" style="color: rgb(102, 0, 102); box-sizing: border-box;">(<span class="hljs-variable" style="box-sizing: border-box;">NSDate</span> *)</span>date;</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li></ul>

2. NSString

<code class="hljs haml has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;">-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)<span class="hljs-constant" style="box-sizing: border-box;">MD5</span>;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)sha1;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)reverse;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)<span class="hljs-constant" style="box-sizing: border-box;">URLEncode</span>;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)<span class="hljs-constant" style="box-sizing: border-box;">URLDecode</span>;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)stringByStrippingWhitespace;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)<span class="hljs-symbol" style="color: rgb(0, 102, 102); box-sizing: border-box;">substringFrom:</span>(<span class="hljs-constant" style="box-sizing: border-box;">NSInteger</span>)from <span class="hljs-symbol" style="color: rgb(0, 102, 102); box-sizing: border-box;">to:</span>(<span class="hljs-constant" style="box-sizing: border-box;">NSInteger</span>)to;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)<span class="hljs-constant" style="box-sizing: border-box;">CapitalizeFirst</span><span class="hljs-symbol" style="color: rgb(0, 102, 102); box-sizing: border-box;">:</span>(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)source;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)<span class="hljs-constant" style="box-sizing: border-box;">UnderscoresToCamelCase</span><span class="hljs-symbol" style="color: rgb(0, 102, 102); box-sizing: border-box;">:</span>(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span>*)underscores;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)<span class="hljs-constant" style="box-sizing: border-box;">CamelCaseToUnderscores</span><span class="hljs-symbol" style="color: rgb(0, 102, 102); box-sizing: border-box;">:</span>(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)input;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSUInteger</span>)countWords;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">BOOL</span>)<span class="hljs-symbol" style="color: rgb(0, 102, 102); box-sizing: border-box;">contains:</span>(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)string;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">BOOL</span>)isBlank;</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li></ul>

3. NSUserDefaults

<code class="hljs objectivec has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;">+(<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">void</span>)saveObject:(<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">id</span>)object forKey:(<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">NSString</span> *)key;+(<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">id</span>)retrieveObjectForKey:(<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">NSString</span> *)key;+(<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">void</span>)deleteObjectForKey:(<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">NSString</span> *)key;</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li></ul>

4. UIColor

<code class="hljs perl has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;">+(UIColor <span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">*)</span>colorWithHex:(<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">int</span>)<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">hex</span>;</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li></ul>

5. UIImage + GIF

<code class="hljs objectivec has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;">+(<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">UIImage</span> *)animatedImageWithAnimatedGIFData:(NSData *)theData;+(<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">UIImage</span> *)animatedImageWithAnimatedGIFURL:(<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">NSURL</span> *)theURL;</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li></ul>

下载地址:http://download.csdn.net/detail/baihuaxiu123/9509303

三 辅助软件

1:XCODE文档注解插件VVDocumenter 
地址:https://github.com/onevcat/VVDocumenter-Xcode

2:将JSON格式化输出为模型的属性 
地址:https://github.com/EnjoySR/ESJsonFormat-Xcode

3:图片提示插件 
地址:https://github.com/ksuther/KSImageNamed-Xcode

4:图片转换插件 
地址:https://github.com/rickytan/RTImageAssets

 

iOS项目中常用第三方库超全总结

标签: ios库框架编程响应式
 504人阅读 评论(1) 收藏 举报
 分类:
 

目录(?)[+]

常用第三方

今天就给大家总结一下,我们在项目中用到最多的第三方,免去了大家花时间去搜索,在这里大家进行了全面的总结.

1. 编程框架

1:基于响应式编程思想的oc 
地址:https://github.com/ReactiveCocoa/ReactiveCocoa

2:iOS快速简单集成国内三大平台分享 
地址:https://github.com/xumeng/XMShareModule

2. 加载提示

1:hud提示框 
地址:https://github.com/jdg/MBProgressHUD

2:状态栏提示框 
地址:https://github.com/jaydee3/JDStatusBarNotification

3:弹出窗 
地址:https://github.com/sberrevoets/SDCAlertView

4:下拉上拉刷数据 
地址:https://github.com/CoderMJLee/MJRefresh

5:下拉菜单插件 
地址:https://github.com/dopcn/DOPDropDownMenu/

6:CBStoreHouseRefreshControl:一个效果很酷炫的下拉刷新控件 
地址:https://github.com/coolbeet/CBStoreHouseRefreshControl

3. 控件布局

1:有文字输入时,能根据键盘是否弹出来调整自身显示内容的位置 
地址:https://github.com/michaeltyson/TPKeyboardAvoiding

2:Masonry代码布局 
地址:https://github.com/SnapKit/Masonry

3:Button的样式 
地址:https://github.com/mattlawer/BButton

4:五项能力值展示的五边形 
地址:https://github.com/dsxNiubility/SXFiveScoreShow

5:自动计算表格行高 
地址:https://github.com/forkingdog/UITableView-FDTemplateLayoutCell

6:底部TabBar 
地址:https://github.com/robbdimitrov/RDVTabBarController

7:表情面版 
地址:https://github.com/ayushgoel/AGEmojiKeyboard

8:记录框架 
地址:https://github.com/CocoaLumberjack/CocoaLumberjack

9:基于Masonry自动计算行高扩展 
地址:https://github.com/632840804/HYBMasonryAutoCellHeight

10:给任意UIView视图四条边框加上阴影,可以自定义阴影的颜色、粗细程度、透明程度以及位置(上下左右边框) 
地址:https://github.com/Seitk/UIView-Shadow-Maker

3. 图片处理

1:图片加载 
地址:https://github.com/rs/SDWebImage

14:动画效果的启动页 
地址:https://github.com/IFTTT/JazzHands

4. 表单验证

1:自动识别网址号码邮箱和表情的label 
地址:https://github.com/molon/MLEmojiLabel

2:IM对话功能的封装 
地址:https://github.com/ZhipingYang/UUChatTableView

3:字典转模型框架 
地址:https://github.com/CoderMJLee/MJExtension

5. 网络检查

1:验证网络连接状态 
地址:https://github.com/tonymillion/Reachability

2:block工具包。将很多需要用delegate实现的方法整合成了block的形式 
地址:https://github.com/zwaldowski/BlocksKit

6.图表展示

1:图表统计展示 
地址:https://github.com/kevinzhow/PNChart

2:表格空白提示插件 
地址:https://github.com/dzenbot/DZNEmptyDataSet

7: 时间日历

1:时间帮助插件,可以快速获取时间,比较,增加等操作 
地址:https://github.com/MatthewYork/DateTools

2:不错的日期时间插件 
地址:https://github.com/CoderXL/UUDatePicker

8:引导图

1:比较不错的引导页面插件 
地址:https://github.com/ealeksandrov/EAIntroView

2:快速集成新手引导的类库 
地址:https://github.com/StrongX/XSportLight

3:设置页面的封装 
地址:https://github.com/renzifeng/ZFSetting

9: 二维码

1:扫描二维码,仿微信效果,带有扫描条 
地址:https://github.com/JxbSir/JxbScanQR

2、ZBar 
ZBar 是款桌面电脑用条形码/二维码扫描工具,支持摄像头及图片扫描,支持多平台包括 iPhone 手机。同时 ZBar提供了二维码扫描的 API 开发包。 
https://github.com/ZBar/ZBar

3、ObjQREncoder 
ObjQREncoder 是 Objective-C 的二维码的编码器,用于生成二维码图像。 
https://github.com/jverkoey/ObjQREncoder

9: 与HTML5交互

1:IOS与javascript交互 
地址:https://github.com/marcuswestin/WebViewJavascriptBridge

10: 搜索跳转

1:搜索历史标签 
地址:https://github.com/zhiwupei/SearchHistory

2:两个APP跳转的插件 
地址:https://github.com/usebutton/DeepLinkKit

3: 不错的链式动作 
地址:https://github.com/jhurray/JHChainableAnimations

11:数据存储转化

1:本地存取NSUserDefaults插件 
地址:https://github.com/gangverk/GVUserDefaults

2:NSArray 和 NSDictionary关于LINQ的操作方式,封装一些常用的操作 
地址:https://github.com/ColinEberhardt/LinqToObjectiveC

12: 评分

1:appStore评分 
地址:https://github.com/arashpayan/appirater

12. 网络请求

1、ASIHTTPRequest 
这是一个经典的老库,功能完全而强大,但已经停止更新很久了(iOS5.0停止更新,但是我最近看github上这个项目有新改动)。在不同iOS版本上略微有一些小问题(提醒显示上的),所以用的时候还是稍微修改一下比较好。 
下载地址:https://github.com/pokeb/asi-http-request

2、AFNetworking 
轻量级的通讯类库,使用非常简单。 
下载地址:https://github.com/AFNetworking/AFNetworking

3、MKNetworkKit 
最近做的不错的一个通讯类库,具有AFNetworking和ASIHTTPRequest双方的优点,甚至功能更丰富一些,但是本人还没有使用过。 
下载地址:https://github.com/MugunthKumar/MKNetworkKit

4、可以监控网络请求的内容 
地址:https://github.com/coderyi/NetworkEye

5:一个开源的AFnetworking上层的封装(猿题库等运用) 
地址:https://github.com/yuantiku/YTKNetwork

6:AFNetworking-RACExtensions:针对ReactiveCocoa的AF封装 
地址:https://github.com/CodaFi/AFNetworking-RACExtensions

13. Socket

1、CocoaAsyncSocket 
CocoaAsyncSocket是用的最广泛的socket开发库,省略了程序员与CFNetwork接触的时间,延长了程序员寿命。 
下载地址:https://github.com/robbiehanson/CocoaAsyncSocket

2、SocketRocket 
SocketRocket是Square开发的一个实现webSocket的库,可以轻松的实现即时通信。 
下载地址:https://github.com/square/SocketRocket

14. 数据解析

1、SBJSON 
SBJson的解析速度其实是比较慢的,但是不知道为什么它却是用的最广的。 
下载地址:

2、JSONKit 
JSONKit解析速度上最接近iOS原生解析类,当然iOS5.0才开始支持原生解析,所以选择一个库还是很必要的。 
下载地址:https://github.com/johnezang/JSONKit

3、TouchJSON 
TouchJSON用的也比较广泛. 
下载地址:https://github.com/TouchCode/TouchJSON

4、json-framework 
没有用过。 
下载地址:https://github.com/stig/json-framework

5、TBXML 
TBXML是一套轻量级的DOM方式的XML解析类库,有很好的性能和低内存占用,不过它不对XML格式进行校验,不支持XPath,并且只支持解析,不支持对XML进行修改。 
下载地址:https://github.com/71squared/TBXML

6、TouchXML 
TouchXML这也是一套DOM方式的XML解析类库,支持XPath,不支持XML的修改。 
下载地址:https://github.com/TouchCode/TouchXML

7、KissXML 
KissXML这是一套基于TouchXML的XML解析类库,只不过实现了支持XML的修改。 
下载地址:https://github.com/robbiehanson/KissXML

8、GDataXML 
GDataXML是Google开发的DOM方式XML解析类库,支持读取和修改XML文档,支持XPath方式查询。

9:XML/HTML解析 
地址:https://github.com/topfunky/hpple

15. 第三方管理

1、fmdb 
fmdb是一个数据库管理库,封装了sqlite相关的sql语句,简化数据库操作。 
下载地址:https://github.com/ccgus/fmdb

2、ssziparchive 
ssziparchive与sstoolkit是同一个作者,这哥们儿简直是个天才。 
https://github.com/soffes/ssziparchive

3、ZipArchive 
ZipArchive同样是minizip的封装。 
https://github.com/mattconnolly/ZipArchive

4、Objective-Zip 
Objective-Zip将Zlib和MiniZip用Objective-C进行了封装,使用起来非常简单。 
https://github.com/flyingdolphinstudio/Objective-Zip

5、zxing 
zxing是一个开源Java类库用于解析多种格式的1D/2D条形码。目标是能够对QR编码、DataMatrix、UPC的1D条形码进行解码。 其提供了多种平台下的客户端。 
https://github.com/zxing/zxing

6、OpenUDID 
OpenUDID是iOS禁止使用系统UDID之后的新解决方法。 
https://github.com/ylechelle/OpenUDID

7、RegexKitLite 
RegexKitLite 是一个轻量级的 Objective-C 的正则表达式库,支持 Mac OS X 和 iOS,使用ICU 库开发。 
https://github.com/wezm/RegexKitLite

8、STUtils 
STUtils是一系列的工具集,包含了很多对于iOS原生类的扩展,当然也包含一个用于安全保存用户密码STKeyChain。 
https://github.com/ldandersen/STUtils

9、scifihifi-iphone 
scifihifi-iphone用于安全保存用户密码到keychain中。 
https://github.com/ldandersen/scifihifi-iphone

10、sskeychain 
sskeychain同scifihifi-iphone一样,不过属于轻量级。 
https://github.com/soffes/sskeychain

11、SDWebImage 
SDWebImage调用网站上的图片,跟本地调用内置在应用包里的图片一样简单。操作也很简单。 
https://github.com/rs/SDWebImage

12、umeng 
umeng既有统计分析,也有社会化组件。但是统计分析的用户数似乎明显多于其社会化组件的用户。 
http://dev.umeng.com/analytics/ios/sdk-download

16. 动画特效

1:弹出层视图,背景效果(可以自定义视图的内容) 
地址:https://github.com/HJaycee/JCAlertView

2:圆形进度条的显示,中间可显示值 
地址:https://github.com/mdinacci/MDRadialProgress

3:很帅的数据加载动画(可以用于数据列表加载的展现) 
地址:https://github.com/NghiaTranUIT/FeSpinner

4:图文混搭 
地址:https://github.com/zhouande/TLAttributedLabel

5:可以简单展示在UINavigationBar下方,类似Music app的播放列表视图,弹出菜单视图 
地址:https://github.com/DrummerB/BFNavigationBarDrawer

6:比如筛选、模糊、优化、蒙版、调整大小、旋转以及保存等等。同时还提供了一个UIImageView子类从URL异步加载图片,并在下载完毕时展示图片。 
地址:https://github.com/Nyx0uf/NYXImagesKit

7:动效弹出视图(弹出窗里面为文字,可以定义弹出的方向,及显示的时间)–AMPopTip 
地址:https://github.com/andreamazz/AMPopTip

8:模仿新浪微博弹出菜单 
地址:https://github.com/wwdc14/HyPopMenuView

9:带箭头的弹出视图插件 
地址:https://github.com/xiekw2010/DXPopover

10:底部弹出选择 
地址:https://github.com/skywinder/ActionSheetPicker-3.0

11:模糊效果(毛玻璃) 
地址:https://github.com/nicklockwood/FXBlurView

12:表格行左右划动菜单 
地址:https://github.com/MortimerGoro/MGSwipeTableCell

二 iOS常见分类

一些必要的类别iOS开发。包括的NSDate,的NSString,NSUserDefaults的,和的UIColor帮助UIImage的方法。

1. NSDate

<code class="hljs erlang has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-pp" style="box-sizing: border-box;">-<span class="hljs-params" style="color: rgb(102, 0, 102); box-sizing: border-box;">(<span class="hljs-variable" style="box-sizing: border-box;">NSString</span> *)</span>formatWithString:<span class="hljs-params" style="color: rgb(102, 0, 102); box-sizing: border-box;">(<span class="hljs-variable" style="box-sizing: border-box;">NSString</span> *)</span>format;-<span class="hljs-params" style="color: rgb(102, 0, 102); box-sizing: border-box;">(<span class="hljs-variable" style="box-sizing: border-box;">NSString</span> *)</span>formatWithStyle:<span class="hljs-params" style="color: rgb(102, 0, 102); box-sizing: border-box;">(<span class="hljs-variable" style="box-sizing: border-box;">NSDateFormatterStyle</span>)</span>style;-<span class="hljs-params" style="color: rgb(102, 0, 102); box-sizing: border-box;">(<span class="hljs-variable" style="box-sizing: border-box;">NSString</span> *)</span>distanceOfTimeInWords;-<span class="hljs-params" style="color: rgb(102, 0, 102); box-sizing: border-box;">(<span class="hljs-variable" style="box-sizing: border-box;">NSString</span> *)</span>distanceOfTimeInWords:<span class="hljs-params" style="color: rgb(102, 0, 102); box-sizing: border-box;">(<span class="hljs-variable" style="box-sizing: border-box;">NSDate</span> *)</span>date;</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li></ul>

2. NSString

<code class="hljs haml has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;">-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)<span class="hljs-constant" style="box-sizing: border-box;">MD5</span>;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)sha1;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)reverse;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)<span class="hljs-constant" style="box-sizing: border-box;">URLEncode</span>;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)<span class="hljs-constant" style="box-sizing: border-box;">URLDecode</span>;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)stringByStrippingWhitespace;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)<span class="hljs-symbol" style="color: rgb(0, 102, 102); box-sizing: border-box;">substringFrom:</span>(<span class="hljs-constant" style="box-sizing: border-box;">NSInteger</span>)from <span class="hljs-symbol" style="color: rgb(0, 102, 102); box-sizing: border-box;">to:</span>(<span class="hljs-constant" style="box-sizing: border-box;">NSInteger</span>)to;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)<span class="hljs-constant" style="box-sizing: border-box;">CapitalizeFirst</span><span class="hljs-symbol" style="color: rgb(0, 102, 102); box-sizing: border-box;">:</span>(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)source;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)<span class="hljs-constant" style="box-sizing: border-box;">UnderscoresToCamelCase</span><span class="hljs-symbol" style="color: rgb(0, 102, 102); box-sizing: border-box;">:</span>(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span>*)underscores;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)<span class="hljs-constant" style="box-sizing: border-box;">CamelCaseToUnderscores</span><span class="hljs-symbol" style="color: rgb(0, 102, 102); box-sizing: border-box;">:</span>(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)input;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">NSUInteger</span>)countWords;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">BOOL</span>)<span class="hljs-symbol" style="color: rgb(0, 102, 102); box-sizing: border-box;">contains:</span>(<span class="hljs-constant" style="box-sizing: border-box;">NSString</span> *)string;</span>-<span class="ruby" style="box-sizing: border-box;">(<span class="hljs-constant" style="box-sizing: border-box;">BOOL</span>)isBlank;</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li></ul>

3. NSUserDefaults

<code class="hljs objectivec has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;">+(<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">void</span>)saveObject:(<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">id</span>)object forKey:(<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">NSString</span> *)key;+(<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">id</span>)retrieveObjectForKey:(<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">NSString</span> *)key;+(<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">void</span>)deleteObjectForKey:(<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">NSString</span> *)key;</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li></ul>

4. UIColor

<code class="hljs perl has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;">+(UIColor <span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">*)</span>colorWithHex:(<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">int</span>)<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">hex</span>;</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li></ul>

5. UIImage + GIF

<code class="hljs objectivec has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;">+(<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">UIImage</span> *)animatedImageWithAnimatedGIFData:(NSData *)theData;+(<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">UIImage</span> *)animatedImageWithAnimatedGIFURL:(<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">NSURL</span> *)theURL;</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li></ul>

下载地址:http://download.csdn.net/detail/baihuaxiu123/9509303

三 辅助软件

1:XCODE文档注解插件VVDocumenter 
地址:https://github.com/onevcat/VVDocumenter-Xcode

2:将JSON格式化输出为模型的属性 
地址:https://github.com/EnjoySR/ESJsonFormat-Xcode

3:图片提示插件 
地址:https://github.com/ksuther/KSImageNamed-Xcode

4:图片转换插件 
地址:https://github.com/rickytan/RTImageAssets

1 0
原创粉丝点击