记录一些有用的开源项目,希望通过学习别人的东西来提高自己的水平。
10个最有用的iOS开源项目:http://www.raywenderlich.com/21987/top-10-most-useful-ios-libraries-to-know-and-love
一、网络请求——AFNetworking
下载地址:https://github.com/AFNetworking/AFNetworking
参考教程:Everybody Loves AFNetworking And So Can You!
要求:1、iOS 5 or later. 2、ARC.
提供的例子按照MVC编写,很值得学习;Model:进行网络请求,通过block返回数据;View:封装一个Model对象,等网络请求完毕,通过Model对象的Setter更新视图;Controller:Model和View的中间人。
二、消息提示——MBProgressHUD
下载地址:https://github.com/jdg/MBProgressHUD
三、第三方库管理——CocoaPods
下载地址:https://github.com/CocoaPods/CocoaPods
参考教程:http://www.raywenderlich.com/12139/introduction-to-cocoapods
的确是个好东西,可以很方便的管理第三方库,清晰知道项目引用的库有哪些和它们的版本。
四、消息提示——DejalActivityView
下载地址:https://github.com/Dejal/DejalActivityView.git
要求:1、iOS 5 or later. 2、ARC.
相比MBProgressHUD,感觉使用更方便,提供苹果官方的"Loading..."视图、HUD动画效果、键盘HUD。
五、无限循环滚动视图——InfinitePagingView
下载地址:https://github.com/caesarcat/InfinitePagingView.git
无限循环滚动视图,支持横向和纵向,不过有个问题是视图个数不能是2,其他都可以。
1、iOS 5 or later. 2、ARC.
六、上拉和下拉更新——SVPullToRefresh
下载地址:https://github.com/samvermette/SVPullToRefresh.git
1、iOS 5 or later. 2、ARC.
只需要一句代码就可以添加上拉刷新(下拉刷新),拉动过程的不同状态可以使用自定义视图。
七、SDWebImage
下载地址:https://github.com/rs/SDWebImage.git
图片异步缓存(内容和硬盘),网络异步加载。
——以下内容更新于2013-3-29
八、HUD——SVProgressHUD
下载地址:https://github.com/samvermette/SVProgressHUD
相比MBProgressHUD,更容易使用,比较适合更新数据的情况。
[SVProgressHUD showWithStatus:@"更新"];// 更新HUD
[SVProgressHUD showSuccessWithStatus:@"更新成功"];// 带勾图片的成功HUD
[SVProgressHUD showErrorWithStatus:@"更新失敗"];// 带叉图片的失败HUD
九、分段选择——SVSegmentedControl
下载地址:https://github.com/samvermette/SVSegmentedControl
要求:1、iOS 5 or later. 2、ARC.
模仿UISegementedControl可以分段选择,样式像UISwitch,很容易就可以做成不错的效果。
十、分段选择——HMSegmentedControl
下载地址:https://github.com/HeshamMegid/HMSegmentedControl
要求:1、iOS 5 or later. 2、ARC.
类似android的风格。
十一、UIWebView浏览器——SVWebViewController
下载地址:https://github.com/samvermette/SVWebViewController
要求:1、iOS 5 or later. 2、ARC.
支持iPhone和iPad,提供上一页、下一页、刷新、浏览器打开、链接发送邮件功能。
十二、图片浏览器——MWPhotoBrowser
下载地址:https://github.com/mwaterfall/MWPhotoBrowser
模仿iOS原生图片浏览器,适用本地图片和网络图片。
十三、Keychain——SSKeychain
下载地址:https://github.com/soffes/sskeychain
Keychain的Objective-C封装,简单易用。
十四、属性标签——TTTAttributedLabel
下载地址:https://github.com/mattt/TTTAttributedLabel
标签支持不同属性,可以检测链接、电话、地址、事件等。
——以下内容更新于2013-5-11
十五、网格——https://github.com/steipete/PSTCollectionView
下载地址:https://github.com/steipete/PSTCollectionView
仿iOS6的UICollectionView,向前兼容iOS4.3+。
十六、滚动视图——SwipeView
下载地址:https://github.com/nicklockwood/SwipeView
使用UIScrollView实现横向滚动,仿UITableView的datasource/delegate设计,可以动态加载视图,reloadData,循环等。
Fork:https://github.com/bluesLf/SwipeView.git ,增加滚动的缩放和透明效果。
十七、选择器——ActionSheetPicker
下载地址:https://github.com/TimCinel/ActionSheetPicker
iPhone/iPod = Picker + UIActionSheet
iPad = Picker + UIPopoverController
——以下内容更新于2013-8-2
十八、扁平颜色——UIColor-MLPFlatColors
下载地址:https://github.com/EddyBorja/UIColor-MLPFlatColors.git
十九、iOS7风格的UIKit——FlatUIKit 和 UI7Kit
下载地址:https://github.com/Grouper/FlatUIKit.git 和 https://github.com/youknowone/UI7Kit
模仿iOS7的扁平化风格,替换原生UIKit,为iOS7以下版本提供iOS7的扁平化风格。
二十、zip解压缩——ZipArchive
下载地址:https://github.com/mattconnolly/ZipArchive.git
zip解压缩工具库。
二十一、gif播放——OLImageView
下载地址:https://github.com/ondalabs/OLImageView
支持gif播放。