iOS7学习点滴-笔记2

iOS7应用开发入门经典(第五版)
第三章–第四章

第三章 探索 Apple 平台 OC

1、单例(Singleton):在程序的整个生命周期内只能实例化一次的类。如,获悉设备朝向的类被实现为单例,因为只有一个返回朝向信息的传感器。

2、实例变量:对象特有的一项信息的存储位置。
@property (strong, nonatomic)NSString *str;
str是属性,_str是实例变量。

3、除极少数情况下,一般都将实现文件中定义 outlet 和 action。

4、协议不实现功能,而定义了遵守协议的类可能或必须实现的功能。换句话说,你可以定义一个协议,让其他的类能够与你编写的代码交互。这种交互通常是使用UITable对象实现的,这些对象要求你编写向它们提供数据的方法。
@protocol A < NSObject >
@optional
//
@required
//
@end

5、LIVM编译器
自动引用计数(Automatic Reference Counting, ARC)

第四章 Cocoa Touch 内幕

6、iOS的层次关系
Cocoa Touch 层
Media层
Core Service层
Core OS层

7、Cocoa Touch 是iOS的框架
Cocoa 是 Mac OS X应用层序框架

8、Cocoa Touch 层
提供多任务和广告功能等核心功能。
UIKit:负责启动和结束应用程序、控制界面和多点触摸事件,并能够让你访问常见的数据视图(如网页以及 Word 和 Excel )。
MapKit:向应用程序添加Apple地图视图,包括标注、定位和事件处理功能。
GameKit:网络交互,包括会话发现、仲裁、语言聊天等。
Message UI / Address Book UI / Event Kit UI : 电子邮件、联系人、日历事件
iAd:交互式广告组件

9、Media层
实现多媒体的一些功能,包括创建复杂的图形、播放音频和视频,甚至可生成实时的三维图形。
AV Foundation:播放和编辑复杂的视频,如电影录制、音轨管理和音频平移等等。
Core Audio:播放和录制音频,它包含Audio Toolbox 框架和 AudioUnit框架,其中前者用于播放警报声或导致短暂震动,后者用于处理声音。
Core Image :高级图像和视频处理功能,如,提供了人脸识别和图像过滤功能。
Core Graphics : 可向应用中添加2D绘画和合成功能。
Core Text : 对显示在屏幕上的文本进行精确的定位和控制。
Image I/O : 用于导入和导出图像数据和图像元数据,这些数据可 以iOS支持的任何文件格式存储。
Media Player:让开发人员能够使用典型的屏幕控件轻松地播放电影,你可在应用程序中直接调用播放器。
OpenGL ES:是OpenGL 框架的子集,适用于嵌入式系统(ES),可用于创建2D/3D动画。
Quartz Core:创建利用设备硬件功能的动画。这包括Core Animation 的功能集。

10、Core Service层
用于访问较低级的操作系统服务,如文件存取、iCloud存储、联网和众多常见的数据对象类型。
Accounts:iOS设备经常存储众多不同服务的账户的信息,Accounts框架简化了存储账户信息以及对用户进行身份验证的过程。
Address Book : 直接访问和操作地址簿,用于在应用程序中更新和显示通讯录。
CFNetwork:访问BSD套接字、HTTP和FTP协议请求以及Bonjour发现。
Core Data : 创建iOS应用程序的数据模型,它提供一个基于SQLite的关系数据库模型,可用于将数据绑定到界面对象,从而避免使用代码进行复杂的数据操纵。
Core Foundation:大部分功能和Foundation框架相同,但它是一个过程性C语言框架。
Foundation:提供了OC封装器,操纵字符串、数组和字典等,还有如管理应用程序首选项、线程和本地化。
Event Kit :访问日历信息,包括闹钟。
Core Location : 用于iPhone和iPad的GPS获取经度和纬度信息以及测量精度。
Core Motion : 大部分与运动相关的事件,如使用加速计和陀螺仪。
Newsstand:创建数字媒体期刊,如报纸杂志。该框架支持自动更新。
Pass Kit :结合Web服务,可向用户提供电子优惠券、电子登机牌、电子门票和其他交易信息。
Quick Look : 在应用程序中实现文件浏览功能。
Social :一个针对流行社交网站的框架。
Store Kit :让开发人员能够在应用程序中创建购买事务,而无需退出程序。
System Configuration : 用于确定设备网络的当前状态:连接的是哪个网络?哪些设备可达?

11、Core OS层
主要是包括多线程、复杂的数学运算、硬件配件和加密,需要访问这些框架的情况相对较少。
Accelerate:计算和大数操作,包括数字信号处理功能。
Core Bluetooth:连接蓝牙设备
External Accessory :用于开发到配件的连接。
Security:加密解密,包括与iOS密钥链交互以添加、删除和修改密钥项。
System:访问一些UNIX开发环境中的一些典型工具。

12、iOS应用程序的生命周期
用户轻按应用程序图标
* 1 * main()
* 2 * UIApplicationMain():
- 包括了 { application:willFinishLaunchingWithOptions:
application:didFinishLaunchingWithOptions: }
* 3 * 事件循环
* 4 * 系统让应用程序退出前台: { applicationWillResignActive: }
* 5 * 应用程序进入后台: { applicationDidEnterBackground: }

当用户按主屏幕按钮时,应用程序不会终止,而是暂停执行并进入后台,当重新打开该应用时,应用程序将自动返回前台,并从暂停的地方继续执行,为了完成这种功能,必须在 applicationDidEnterBackground: 编写代码存储应用程序所需的信息,以防止应用程序位于后台时被终止。

13、NSNumber *num = @’X’ ; // 字符型
NSNumber *num = @42; // 整形
NSNumber *num = @123.45f; // 浮点型
NSNumber *num = @1234ll; // long long 型
NSNumber *num = @123.45; // 双浮点型
NSNumber *num = @YES; // 布尔型

14、弹出框(UIPopoverController)是一种 iPad 特有的 UI

15、文档系统工具栏中的共享图标还可以用于完成如下的任务:以电子邮件和即时通讯的方式将文档链接发送给自己;打开当前文档的PDF拷贝。

16、对于找不到所需的界面对象,可以通过现有的空间派生出子类,并根据需要修改其行为,也可以创建全新的控件。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值