在你开发程序时,主要使用框架就是Foundation和UIKit,由于它们包含了你须要的大部分东西。html
你的应用程序,UIKit和其它的框架都是创建在Foundation框架上面的。Foundation框架是用Object-C对Core Foundation框架里许多特性的封装。web
使用Foundation能够:数据库
你已经在《Your First iOS App》里使用到了Foundation框架。好比,你使用一个NSString类的实例存储用户输入的userName。你还使用了Foundation框架的initWithFormat方法建立了一个字符串。数组
全部的iOS应用程序都基于UIKit,你不能是应用程序脱离这个框架。UIKit提供了在屏幕上绘制的机制,捕获事件,和建立通用用户界面元素。UIKit也经过管理显示在屏幕上的组件来组织复杂的项目。网络
使用UIKit能够:app
在《YouFirst iOS App Tutorial》里,你也使用到了UIKit。当你仔细查看程序是怎么运行起来的时候,你会看到UIApplicationMain函数建立一个UIApplication类的实例,这个实例会捕获进来的用户事件。你实现UITextFieldDelegate协议,而后在用户按下Done时隐藏键盘。实际上,你是在使用UIKit建立用户界面上的UITextField, UILabel,和UIButton类。
Core Data提供对象的管理,使用Core Data,你能够建立模型对象,并管理这些对象。你管理这这些对象间的联系并修改数据。Core Data提供的内建SQLlite技术能够高效的管理数据。框架
使用Core Data能够:iphone
高质量的图形对于全部的iOS应用程序都是很重要的。在iOS中最简单且最快捷的建立图形的方式是使用UIKit框架提供的基于预渲染图形的视图和控件,而后让UIKit和iOS完成绘制。可是当你须要建立复杂的图形时,Core Graphics则提供了更底层的库来帮助你。异步
使用Core Graphics能够:ide
UIKit提供创建在Core Animation之上的动画。若是你须要比UIKit能力更高级的功能,能够直接使用Core Animation。Core Animation接口包含在Quartz Core框架里。使用Core Animation能够建立嵌套的对象,而且能够对它们操做、旋转、缩放和转换。使用Core animation,你能够建立动态的用户界面而不用使用更底层的图形API,如OpenGL ES。
使用Core Animation能够:
OpenGL ES支持2D和3D绘图,Apple的OpenGL ES实现经过硬件提供了高速的全屏游戏式的应用程序。
使用OpenGL ES能够:
还有许多框架能够添加到你的程序里。当你决定使用一个框架但项目里却没有引入这个框架时,你就须要将它加入到你的项目里。
1 打开工程
2 点击项目名,显示project editor
3 在TARGETS列表中选中要添加框架的工程
4 点击project editor顶部的Build Phases
5 点击Link Binary With Libraries前面的三角形打开这个分组
6 经过点击添加(+)来添加一个框架
7 在列表中选择一个框架,而后点击Add按钮
名称 |
最早引入 |
前缀 |
描述 |
---|---|---|---|
|
4.0 |
|
包含加速数学和DSP函数。 请查看 加速框架参考 。 |
|
2.0 |
|
包含直接访问用户联系人数据库的函数。请查看地址簿框架参考。 |
|
2.0 |
|
包含显示系统定义的联系人挑选界面和编辑界面的类。请查看iOS地址簿UI框架参考 。 |
|
4.0 |
|
包含显示用户照片和视频的类,请查看资源库框架参考 。 |
|
2.0 |
|
包含处理音频流数据以及播放或录制音频的接口。请查看音频工具箱框架参考。 |
|
2.0 |
|
包含加载并使用音频单元的接口。请查看音频单元框架参考. |
|
2.2 |
|
包含播放或录制音频的Objective-C接口。请查看AV Foundation框架参考.。 |
|
2.0 |
|
包含经过WiFi或者蜂窝无线访问网络的接口。请查看CFNetwork框架参考。 |
|
2.0 |
|
包含Core Audio框架使用的各类数据类型。请查看Core Audio 框架参考 。 |
|
3.0 |
|
包含管理应用程序数据模型的接口。请查看Core Data 框架参考 。 |
|
2.0 |
|
提供一些基本软件服务,包括常见数据类型抽象、字符串实用工具、群体类型实用工具、资源管理以及偏好设置。请查看rovCore Foundation框架参考。 |
|
2.0 |
|
包含Quartz 2D接口。请查看Core Graphics 框架参考 。 |
|
2.0 |
|
包含肯定用户方位信息的接口。请查看Core Location 框架参考。 |
|
4.0 |
|
包含操做音频和视频的底层例程。请查看Core Media 框架参考。 |
|
4.0 |
|
包含访问加速度计以及陀螺仪的数据的接口。请查看Core Motion 框架参考。 |
|
4.0 |
|
包含访问电话相关的信息的例程。请查看Core Telephony 框架参考。 |
|
3.2 |
|
包含一个文本的布局渲染引擎。请查看Core Text参考集.。 |
|
4.0 |
|
包含操做音频和视频的底层例程。请不要直接使用该框架。 |
|
4.0 |
|
包含访问用户日历事件数据的接口。请查看Event Kit 框架参考。 |
|
4.0 |
|
包含显示标准系统日历界面的类。请查看Event Kit UI 框架参考。 |
|
3.0 |
|
包含与外设进行通信的接口。请查看External Accessory 框架参考。 |
|
2.0 |
|
包含Cocoa Foundation层的类和方法。请查看Foundation 框架参考。 |
|
3.0 |
|
包含点对点链接管理接口。请查看Game Kit 框架参考。 |
|
4.0 |
|
包含在应用程序中显示广告的类。请查看iAd 框架参考。 |
|
4.0 |
|
包含读取或写入图像数据的类。请查看Image I/O 参考集。 |
|
2.0 |
N/A |
包含设备所使用的接口。请不要直接使用此框架。 |
|
3.0 |
|
包含将地图界面嵌入到应用程序的类,也能够用于查找地理编码反向坐标。请查看Map Kit框架参考。 |
|
2.0 |
|
包含显示全屏视频的接口。请查看Media Player 框架参考。 |
|
3.0 |
|
包含撰写和排队发送电子邮件信息的界面。请查看Message UI 框架参考。 |
|
3.0 |
|
定义系统支持的统一类型标识符(UTIs)。 |
|
2.0 |
|
包含OpenAL接口。OpenAL是一个跨平台的方位音频库。如需进一步了解,请访问http://www.openal.org。 |
|
2.0 |
|
包含OpenGL ES接口。OpenGL ES框架是OpenGL跨平台2D和3D渲染库的跨平台版本。请查看OpenGL ES 框架参考。 |
|
2.0 |
|
包含Core Animation接口。请查看Quartz Core 框架参考。 |
|
4.0 |
|
包含预览文件接口。请查看Quick Look 框架参考。 |
|
2.0 |
|
包含管理证书、公钥私钥以及信任策略的接口。请查看Security框架参考。 |
|
3.0 |
|
包含用于处理与应用程序内购买相关的财务交易。请查看 Store Kit 框架参考。 |
|
2.0 |
|
包含用于处理设备网络配置的接口。请查看System Configuration框架参考。 |
|
2.0 |
|
包含iOS应用程序用户界面层使用的类和方法。请查看UIKit 框架参考。 |