每一次的改变总意味着新的开始。”这句话用在iOS上可谓是再合适不过的了。GitHub上的iOS开源项目数不胜数,iOS每一次的改变,总会引发iOS开源项目的演变,从iOS 1.x到如今的iOS 7,有的项目已经被弃用,即使曾经的它很受开发者喜爱,有的项目则继续发扬光大,新项目更是层出不穷。在本文中,我们将继续为大家介绍20个在GitHub上非常受开发者欢迎的iOS开源项目,在这些项目中,有哪些是你经常使用的?又有哪些是你曾经使用过的?

21. SSToolkit

SSToolkit可以说是iOS开发者最常使用的工具类之一,该开源项目提供了一个完整的iOS类库集合,用于解决iOS开发者在开发过程中常碰到的一些问题,比如追踪一款设备是否具有视网膜显示屏或是否能剪裁图片,包含SSCollectionView、SSGradientView、SSSwitch等诸多非常方便的类。

如果想要对SSToolkit作进一步了解,可以在iPad/iPhone上使用SSToolkit的Demo应用SSCatalog。获取更多信息,可直接登陆S.S. TOOLKIT

22. XMPPFramework

XMPPFramework是一个使用Objective-C编写的用于Mac/iOS开发的XMPP框架,它提供了一个RFC-3920(XMPP标准)核心实现,通过某些特定工具读写XML。XMPPFramework有着非常丰富的建立在模块化架构之上的XEP扩展,开发者可以将其直接插入到代码中,使用GCD构成,即使是在非常老旧的iPhone或12核Mac Pro上,它都能高效运转。

23. MGSplitViewController

为了方面开发,苹果iOS SDK提供了UISplitViewController用于iPad左右分栏界面显示,但对于开发者而言,UISplitViewController使用起来并不方便,在开发过程中,总会遇到许多问题。于是,天才的iOS开发者Matt Gemmell在GitHub上发起了一个名为MGSplitViewController的开源UISplitView实现,它比苹果官方UI组件所提供的分栏类功能更加丰富。

最初Matt编写MGSplitViewController只是为了方便自己使用,但最终Matt决定将其开源,供所有iOS开发者使用。如果想要了解更多关于MGSplitViewController的信息,可直接登陆Matt Gemmell博客查看,也可点击链接,查看视频演示(需FQ)。

24. CocoaLumberjack

CocoaLumberjack集快、简单、强大、灵活于一身,和log4j等其他非常受开发者欢迎的日志框架的概念类似,专为Objective-C设计,用于iOS和Mac,拥有多线程、GCD(如果可用)、无锁原子操作和Objective-C运行时的动态特性。

25. PSTCollectionView

PSTCollectionView是用于iOS 4.3及其以上版本中的UICollectionView的100%开源API兼容替代品。如果想要使用UICollectionView,但仍然需要支持老版本的iOS,那么这个项目你一定会非常喜欢。如果想要始终使用PSTCollectionView,使用PSTCollectionView作为类名称即可。

当然,如果你想在iOS 4.3/5.x上使用PSTCollectionView,但在iOS 6上使用UICollectionView,可以在所有UICollectionView类上添加PS,以获得对老版iOS的自动支持,这样就可以随心所欲如你所愿地使用PSUICollectionView。

26. CocoaHTTPServer

CocoaHTTPServer是一个用于Mac OS X或iOS应用的轻量级、可嵌入的HTTP服务器框架。有时候开发者需要在他们的App中内嵌一个HTTP服务器。无论是具有远程监控功能的服务器应用,还是使用HTTP进行后端通信的桌面应用,或者是提供无线访问文档功能的iOS应用,CocoaHTTPServer都能满足你的开发要求。

CocoaHTTPServer提供如下功能:

  • 支持Bonjour广播内建;
  • 支持IPv4、IPv6;
  • 异步网络使用GCD和标准套接口;
  • 密码保护支持;
  • SSL/TLS加密支持;
  • 快速、高效;
  • 伸缩性强;
  • 大量注释代码;
  • 非常容易扩展;
  • 还支持WebDAV。

27. PushSharp

在应用开发中,给App推送通知是很常见的方式。PushSharp正是这样一个能够实现向iOS(iPhone/iPad APNS)、Android(C2DM和GCM)、Windows Phone、Windows 8、BlackBerry(PAP)和Amazon(ADM)等多种操作系统推送消息通知的开源C#服务器端库。

主要特性:

  • 支持多平台消息推送;
  • API能够很流畅地为不同平台创建通知;
  • 自适应信息频道(自动增加或减少消息链接);
  • 使用异步代码,基于Event为导向调用类库;
  • 100%代码托管,兼容Mono框架;

28. HockeyKit

此前在GitHub上“最受欢迎的Android开源项目”系列文章(一)中,我们曾对HockeyKit进行了详细的介绍。HockeyKit是一个用于iOS和Android下App更新的开发包,无论是iOS还是Android应用开发,它都深受开发者喜爱。

29. JTRevealSidebarDemo

JTRevealSidebarDemo是一个能够实现类似于Facebook客户端和Path应用的视图切换效果的Objective-C库模板,其目的在于为开发者提供一个真正灵活的、可重用的解决方案。

JTRevealSidebarDemo可用于iOS 4.3和5.0应用开发,示例代码使用ARC构建,但该库本身则兼容ARC和非ARC。

30. PKRevealController

PKRevealController是对ZUUIRevealController的进化,ZUUIRevealController能够实现类似于Facebook客户端的视图横向切换效果。而PKRevealController则是一个iOS视图控制器的集合,能够让你实现多重控制器切换,非常灵活。

31. QuincyKit

QuincyKit是一个为iOS和Mac OS X提供的程序崩溃报告管理解决方案,提供客户端开发包以及基于PHP开发的服务器平台。

主要功能:

  • (自动)向开发者数据库发送崩溃报告;
  • 由用户决定每次崩溃是否发送数据或总是发送;
  • 用户可对是否选择提供E-mail地址等额外信息进行设置;
  • 如果崩溃是已知的,向用户提供即时反馈,并在接下来的更新中进行修复。

详情请参考:QuincyKit官网

32. PSStackedView

PSStackedView能够将你的UIViewControllers堆叠起来,实现了类似于Twitter iPad版应用效果的界面,项目发起人Peter Steinberger表示,PSStackedView的灵感正是来自于Twitter iPad的UI。

为了开发非常受欢迎的奥地利TV应用3MobileTV的iPad版,Peter创作了PSStackedView,开发者可以直接登陆App Store下载该应用。PSStackedView可运行在iPad和iPhone上,但相对而言,更适合用在iPad上。

33. Chameleon

作为一名iOS开发者,你应该对苹果官方用于开发iPhone、iPod和iPad应用的UIKit框架很熟悉。Chameleon是一个完全独立的可以直接替代UIKit在Mac OS X上运行的框架,和UIKit唯一的共性就是公共类和方法名称。在大多数情况下,开发者不需要改动任何代码,即可直接在Mac上运行所开发的iOS应用。

Chameleon的源代码是基于苹果的文档而来,并没有使用到任何私有API或其他未经Mac App Store批准的技术。如果想要了解更多关于Chameleon的信息,可直接登陆ChameleonProject网站查看。

34. cocos2d-iphone-extensions

Cocos2D-iPhone-Extensions整合了非常多的优秀的Cocos2D-iPhone引擎第三方扩展。该项目并没有对Cocos2D进行任何改变,只是将新功能源源不断地加入到Cocos2D-iPhone-Extensions中,供开发者使用。

35. DCIntrospect

Introspect是一个很小的iOS工具集,用于帮助开发者对使用UIKit构建的用户界面进行调试。特别适用于动态创建UI布局、改变运行时,还能通过寻找透明视图优化应用性能,并避免不必要的重绘视图。

36. PSCollectionView

PSCollectionView是一个能够实现Pinterest风格的瀑布流视图显示效果的iOS滚动组件,可用于类似的UITableView,支持显示图片和文字。

 

项目发起人Peter Shih在自己的iPhone/iPad应用Lunchbox中使用了PSCollectionView源代码,开发者可以在App Store中免费下载该应用。

37. SDURLCache

NSURLCache及其子类提供了很多高级接口用于处理缓存,但如果你想在自己的iPhone应用中通过HTTP请求的方式将缓存存储到磁盘中,推荐使用SDURLCache。Peter Steinberger在GitHub上托管的这个SDURLCache项目是Olivier Poitrey的SDURLCache的一个分支,支持iOS 5以下版本系统。

38. FastPdfKit

该开源库包含着FastPdfKit iOS库的一些示例项目。FastPdfKit是一个能够让你在iOS应用中显示PDF文档的开发类库,其最大的特点就是加载PDF文档速度特别快。

详情请参考:FastPdfKit官网

39. KKGridView

KKGridView是一个高性能的iOS表格组件,但自WWDC 2012大会上苹果推出了相关的解决方案之后,KKGridView也就逐渐停止使用了。每逢iOS系统更新,iOS开源项目势必也会发生新一轮的改变,至于在颠覆了苹果以往设计观的iOS 7发布之后,iOS开源项目又会发生哪些改变?还要看天才的开发者们!

40. MGBox2

MGBox2能够实现非常酷的列表交互效果,使用最少代码,即可快速创建各种布局效果的iOS表格、网格,支持新增和删除网格,动态添加或删除列表,在表格中加入多行文字、图片等,支持手势识别和自定义事件。

(文/唐小引 责编/张宁)

相关阅读:最受欢迎的开源项目系列

我们搜集了最火的移动开发开源项目,本系列将不断更新,也欢迎大家提供线索,请私信:@CSDN移动

转自:http://www.csdn.net/article/2013-06-18/2815806-GitHub-iOS-open-source-projects-two

直接拿来用!最火的iOS开源项目(二)的更多相关文章

  1. 直接拿来用!最火的iOS开源项目(一)

    直接拿来用!最火的iOS开源项目(一) 发表于2013-06-05 10:17| 39373次阅读| 来源CSDN| 100 条评论| 作者唐小引 iOS开源项目GitHub移动开发最受欢迎的开源项目 ...

  2. 直接拿来用!最火的iOS开源项目(一~三)

    结束了GitHub平台上“最受欢迎的Android开源项目”系列盘点之后,我们正式迎来了“GitHub上最受欢迎的iOS开源项目”系列盘点.今天,我们将介绍20个在GitHub上非常受开发者欢迎的iO ...

  3. 直接拿来用!最火的iOS开源项目(三)

    相比Android,GitHub上的iOS开源项目更可谓是姹紫嫣红.尽管效果各异,但究其根源,却都是因为开发者本身对于某种效果的需求以及热爱.在“直接拿来用!最火的iOS开源项目”系列文章(一).(二 ...

  4. 直接拿来用!最火的iOS开源项目

    1. AFNetworking 在众多iOS开源项目中,AFNetworking可以称得上是最受开发者欢迎的库项目.AFNetworking是一个轻量级的iOS.Mac OS X网络通信类库,现在是G ...

  5. (转)直接拿来用!最火的iOS开源项目(一)

    1. AFNetworking 在众多iOS开源项目中,AFNetworking可以称得上是最受开发者欢迎的库项目.AFNetworking是一个轻量级的iOS.Mac OS X网络通信类库,现在是G ...

  6. (转)直接拿来用!最火的iOS开源项目(二)

    “每一次的改变总意味着新的开始.”这句话用在iOS上可谓是再合适不过的了.GitHub上的iOS开源项目数不胜数,iOS每一次的改变,总会引发iOS开源项目的演变,从iOS 1.x到如今的iOS 7, ...

  7. 【转】GitHub平台最火的iOS开源项目——2013-08-25 17

    http://www.cnblogs.com/lhming/category/391396.html 今天,我们将介绍20个在GitHub上非常受开发者欢迎的iOS开源项目,你准备好了吗? 1. AF ...

  8. GitHub Android 最火开源项目Top20 GitHub 上的开源项目不胜枚举,越来越多的开源项目正在迁移到GitHub平台上。基于不要重复造轮子的原则,了解当下比较流行的Android与iOS开源项目很是必要。利用这些项目,有时能够让你达到事半功倍的效果。

    1. ActionBarSherlock(推荐) ActionBarSherlock应该算得上是GitHub上最火的Android开源项目了,它是一个独立的库,通过一个API和主题,开发者就可以很方便 ...

  9. GitHub上最火的40个iOS开源项目

    1. AFNetworking 在众多iOS开源项目中,AFNetworking可以称得上是最受开发者欢迎的库项目.AFNetworking是一个轻量级的iOS. Mac OS X网络通信类库,现在是 ...

随机推荐

  1. 【hdu1712】分组背包(每组最多选1个)

    [分组背包] [题意]ACboy要开始选课了,上一门课能够获得的收益和他上这门课的时间是有关的,然后给你若干门课,让你帮他进行选课,每一门课自然是只能选择一个课程时长,问你如何选择,才能使ACboy获 ...

  2. 【BZOJ2049】【SDOI2008】洞穴勘测 [LCT]

    洞穴勘测 Time Limit: 10 Sec  Memory Limit: 259 MB[Submit][Status][Discuss] Description 辉辉热衷于洞穴勘测.某天,他按照地 ...

  3. 【BZOJ】1571: [Usaco2009 Open]滑雪课Ski

    [算法]动态规划 [题解]yy出了O(1w log 1w)的算法. 将雪坡排序预处理出g[i]表示能力值为i的最短时长雪坡. 这样就可以定义work(t,c)表示时长t能力c的最多滑雪数量,work( ...

  4. 【BZOJ】1799: [Ahoi2009]self 同类分布

    [题意]给出a,b,求出[a,b]中各位数字之和能整除原数的数的个数.1 ≤ a ≤ b ≤ 10^18 [算法]数位DP [题解] 感觉这种方法很暴力啊. 枚举数位和1~162(不能枚举0,不然会模 ...

  5. hdu 2899 Strange fuction (二分)

    题目链接:http://acm.hdu.edu.cn/showproblem.pihp?pid=2899 题目大意:找出满足F(x) = 6 * x^7+8*x^6+7*x^3+5*x^2-y*x ( ...

  6. hdu 2016 数据的交换输出

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2016 题目大意:把最小的和第一个交换并输出.注意格式哦! #include <stdio.h&g ...

  7. 常见协议基础知识总结--DHCP协议

    DHCP动态主机配置协议,简单点说,就是提供了自动获取ip地址的功能,基于四层的UDP协议: 以下描述此协议的整个工作流程: (1) 客户端发送discovery报文,二三层广播报文,源ip地址全0: ...

  8. easyui获取当前选中的tabs

    $("#" + $("#tabs").find("iframe")[$(".tabs-header ul li").in ...

  9. Oracle rman 脚本

    1.shell脚本1)vi rman_backup.cmd#rman_backup.cmdconnect target /run{  allocate channel d1 device type d ...

  10. POJ 1698 Alice's Chance

    题目:Alice 要拍电影,每一天只能参与一部电影的拍摄,每一部电影只能在 Wi 周之内的指定的日子拍摄,总共需要花 Di 天时间,求能否拍完所有电影. 典型的二分图多重匹配,这里用了最大流的 din ...