本书旨在以教程的形式讲解如何使用本地iPhone SDK进行iPhone/iPad开发。首先介绍了Objective-C、Xcode、Interface Builder、视图控制器、标准事件和动作模型等基础知识,接着介绍了一些数据访问方法与出色的硬件功能(加速计、GPS和罗盘),然后讨论了媒体、音频、图形、互联网等主题,最后通过实例展示了如何使用Game Kit框架、推送通知、Map Kit框架和Store Kit框架等。本书适合所有iPhone和iPad开发人员阅读。
作者简介
作者:(美国)Brandon Trebitowski Christopher Allen Shannon Appelcline 译者:张波 陈宝国 高伟 等 目录
目 录第1章 iPhone与iPad简介 11.1 历史回顾 11.2 人人为我,我为人人:iPhone OS平台 21.3 核心硬件规范 21.3.1 iPhone 21.3.2 iPad 31.3.3 iPod Touch 41.3.4 iPhone和iPad的输入及输出规范 41.3.5 iPhone和iPad网络规范 51.3.6 iPhone OS浏览器规范 61.3.7 移动Web标准 71.3.8 其他硬件特性 71.4 iPhone和iPad的独特之处 81.5 理解iPhone和iPad触摸式交互 91.6 小结 10第2章 Objective-C和iPhone OS SDK 112.1 准备使用SDK 112.1.1 安装SDK 112.1.2 SDK剖析 132.2 Objective-C介绍 142.2.1 概述 142.2.2 消息 152.2.3 类定义 172.2.4 属性 182.2.5 其他编译器指令 202.2.6 类别和协议 202.2.7 Objective-C总结 212.3 iPhone OS介绍 222.3.1 iPhone OS剖析 222.3.2 iPhone OS的对象层次结构 232.3.3 窗口和视图 242.4 iPhone OS的方法 252.4.1 对象创建 252.4.2 内存管理 272.4.3 事件响应 282.4.4 生命周期管理 292.5 小结 30第3章 使用Xcode 313.1 Xcode简介 313.1.1 剖析Xcode 313.1.2 在Xcode中编译和执行 333.2 在Xcode中创建第一个iPhone项目:Hello, World! 333.2.1 理解main.m 333.2.2 理解应用程序委托 343.2.3 编写“Hello, World!” 363.3 在Xcode中创建第一个iPad项目:Hello, World! 383.4 在Xcode中创新建类 393.4.1 新类简介 393.4.2 头文件 393.4.3 源代码文件 403.4.4 链接 423.5 Xcode的其他功能 423.5.1 使用Xcode添加框架 423.5.2 在Xcode中使用其他模板 423.5.3 Xcode提示和技巧 433.6 小结 44第4章 使用Interface Builder 454.1 Interface Builder介绍 454.1.1 Interface Builder剖析 464.1.2 在Interface Builder中模拟 484.2 在Interface Builder中创建第一个项目:图片和网页 484.2.1 新建对象 484.2.2 操作图形对象 494.2.3 使用检查器窗口 494.2.4 使用图片 514.3 在Interface Builder中建立连接 524.3.1 声明IBOutlet 524.3.2 连接对象 534.3.3 使用IBOutlet编写代码 544.4 其他Interface Builder功能 554.4.1 建立其他连接 554.4.2 创建外部对象 554.4.3 初始化Interface Builder对象 564.4.4 访问.xib文件 564.4.5 新建.xib文件 574.5 小结 57第5章 创建基本视图控制器 585.1 视图控制器家族 585.2 标准视图控制器 595.2.1 视图控制器剖析 605.2.2 创建视图控制器 605.2.3 创建另一个视图控制器 605.2.4 构建视图控制器界面 615.2.5 使用视图控制器 625.3 表视图控制器 665.3.1 剖析表视图控制器 665.3.2 创建表视图控制器 665.3.3 构建表界面 675.3.4 使用表视图控制器 725.4 小结 73第6章 监控事件和动作 746.1 事件简介 746.1.1 响应者链 746.1.2 触摸和事件 766.2 触摸的例子:事件报告程序 776.2.1 在Interface Builder中构建应用程序 786.2.2 为触摸准备视图 796.2.3 控制事件 806.3 其他事件功能 826.3.1 规则化事件 826.3.2 其他事件方法和属性 836.4 动作简介 846.4.1 UIControl对象 846.4.2 控件事件和动作 846.4.3 使用addTarget:action:forControlEvents:方法 866.5 向应用程序添加按钮 866.5.1 使用addTarget:action:forControlEvents:与按钮 876.5.2 使用IBAction与按钮 876.6 其他动作功能 886.6.1 使用UITextField接受文本输入 886.6.2 允许使用UISlider来选择值 906.6.3 TextField/Slider组合 906.6.4 创建动作很容易 926.6.5 使用动作 926.7 通知简介 926.8 小结 93第7章 创建高级视图控制器 947.1 标签栏视图控制器 947.1.1 剖析标签栏视图控制器 947.1.2 创建标签栏控制器 957.1.3 构建标签栏界面 977.1.4 使用标签栏控制器 1007.2 导航控制器 1017.2.1 剖析导航控制器 1017.2.2 创建导航控制器 1027.2.3 完成导航控制器 1027.2.4 使用导航控制器 1067.3 使用翻转控制器 1087.4 分割视图控制器 1107.4.1 创建分割视图控制器 1107.4.2 构建分割视图控制器 1127.4.3 使用分割视图控制器 1157.4.4 为竖向模式和横向模式调整界面 1167.5 弹出式视图控制器和模式视图控制器 1167.5.1 创建弹出式视图控制器 1177.5.2 创建模式视图控制器 1177.6 小结 118第8章 数据:动作、首选项和文件 1198.1 接收用户动作 1198.2 管理用户首选项 1208.2.1 创建自己的首选项 1218.2.2 使用系统设置 1258.3 打开文件 1298.3.1 访问软件包 1308.3.2 访问其他目录 1318.3.3 操纵文件 1318.3.4 Filesaver:一个UITextView示例 1328.4 小结 135第9章 数据:高级技术 1369.1 使用SQLite 1369.1.1 设置SQLite数据库 1379.1.2 访问SQLite 1389.1.3 访问SQLite数据库 1389.1.4 通过数据库构建导航菜单 1399.1.5 本例的扩展 1459.2 访问地址簿 1459.2.1 框架概述 1459.2.2 访问地址簿属性 1469.2.3 查询地址簿 1479.2.4 使用地址簿UI 1499.3 Core Data简介 1539.3.1 关于Core Data的背景知识 1539.3.2 在应用程序中设置Core Data 1549.3.3 初始化Core Data对象 1559.3.4 为数据库添加对象 1589.3.5 在Core Data中提取、更新和删除对象 1589.4 小结 160第10章 定位:加速计、位置和罗盘 16110.1 加速计和方向 16110.1.1 orientation属性 16110.1.2 方向通知 16210.2 加速计和移动 16210.2.1 访问UIAccelerometer 16310.2.2 解析UIAcceleration 16310.2.3 查看重力 16410.2.4 查看移动 16610.2.5 识别简单的加速计移动 16610.3 加速计和手势 16.4 Core Location 17010.4.1 位置类 17110.4.2 使用位置和距离的示例 17210.4.3 使用海拔的示例 17410.4.4 使用罗盘 17710.4.5 Core Location和互联网 17.5 小结 178第11章 媒体:图像和照相机 17911.1 图像介绍 17911.1.1 加载UIImage 18011.1.2 绘制UIImageView 18011.1.3 在UIKit中修改图像 18111.2 利用Core Graphics绘制简单图像 18211.3 访问照片 18311.3.1 使用图像选取器 18311.3.2 拍照 18411.3.3 保存到相册 18511.4 拼合:一个图像例子 18511.4.1 拼合视图控制器 18511.4.2 拼合临时图像视图 18911.4.3 拼合视图 19011.4.4 扩展这个例子 19111.5 小结 191第12章 媒体:音频和录音 19212.1 播放iPod库中的音频 19212.1.1 从iPod媒体库中检索音频条目 19212.1.2 获取MPMediaItem的信息 19412.1.3 使用MPMusicPlayerController播放媒体条目 19412.1.4 示例:创建一个简单的媒体播放器应用程序 19612.2 录制音频 19812.2.1 初始化音频录音器 19812.2.2 控制音频录音器 19912.2.3 响应AVAudioRecorder事件 20012.3 手动播放声音 20112.3.1 初始化AVAudio Player 20112.3.2 AVAudioPlayer Delegate 20212.3.3 控制AVAudioPlayer 20212.4 示例:创建一个简单的音频录制/播放应用程序 20312.4.1 创建一个基于视图的应用程序 20412.4.2 添加所需的框架 20412.4.3 构建IBAction 20412.4.4 创建界面 20412.4.5 设置音频录音器并实现IBAction操作 20512.5 录制、播放和访问视频 20612.6 小结 207第13章 图形:Quartz、Core Animation和OpenGL 20913.1 Quartz 2D简介 20913.2 Quartz上下文 21013.2.1 在UIView上绘制图形 21113.2.2 在位图上绘制图形 21213.3 绘制路径 21313.3.1 结束路径 21413.3.2 创建可重用路径 21413.3.3 绘制矩形 21513.4 设置图形状态 21613.4.1 设置颜色 21613.4.2 变换 21713.4.3 设置裁剪路径 21913.4.4 其他设置 22013.4.5 管理状态 22013.5 Quartz中的高级绘图功能 22013.5.1 绘制渐变 22113.5.2 绘制图像 22213.5.3 绘制文字 22313.5.4 未介绍的内容 22413.6 示例:在图片上绘图 22413.6.1 PhotoDraw视图控制器 22513.6.2 photodraw视图 22613.6.3 扩展示例 22813.7 Core Animation简介 22913.7.1 Core Animation基础 23013.7.2 Core Animation入门 23013.7.3 绘制简单的隐式动画 23013.7.4 绘制简单的显式动画 23113.8 OpenGL简介 23213.9 小结 232第14章 Web:Web视图和互联网协议 23414.1 互联网的层次结构 23414.2 低层次联网 23414.3 使用URL 23614.3.1 创建NSURL 23614.3.2 构建NSURLRequest 23714.3.3 手动操作HTML数据 23814.4 使用UIWebView 23814.4.1 调用Web视图 23914.4.2 管理Web视图委托 23914.4.3 缩略图:一个Web视图例子 24014.5 解析XML 24214.5.1 启动NSXMLParser 24214.5.2 充当委托 24314.5.3 构建示例RSS阅读器 24414.5.4 海拔高度重读:一个Core Location示例 24814.6 提交给Web 25014.6.1 手动提交 25014.6.2 提交表单 25114.7 访问社交网络 25214.7.1 使用Web协议 25214.7.2 使用TouchJSON 25314.8 小结 255第15章 使用Game Kit进行P2P连接 25615.1 Game Kit概述 25615.2 使用对等点选取器创建P2P应用程序 25715.2.1 使用苹果公司的内置对等点选取器 25715.2.2 实现GKSession Delegate方法 26015.2.3 在对等点之间发送和接收数据 26115.3 示例:创建一个多人乒乓球游戏 26315.3.1 启动GKTennis项目 26415.3.2 创建头文件 26415.3.3 创建乒乓球游戏界面 26515.3.4 游戏初始化 26615.3.5 建立对等点选取器并进行连接 26715.3.6 实现send和receive方法 26815.3.7 游戏循环 27015.3.8 用户交互 27315.4 小结 274第16章 推送通知服务 27516.1 什么是推送通知 27516.2 苹果公司的推送通知系统概述 27616.3 准备在应用程序中使用推送通知服务 27716.3.1 设置应用程序证书 27816.3.2 建立供应配置文件 27916.3.3 处理推送通知的代码 27916.3.4 准备音频文件 28116.4 使用PHP创建一个推送通知提供程序 28116.4.1 创建SSL证书 28216.4.2 实现PHP推送通知提供程序 28316.5 小结 284第17章 Map Kit框架 28517.1 Map Kit概述 28517.2 向应用程序添加地图 28517.2.1 使用Interface Builder添加地图 28517.2.2 用编程方式添加地图 28717.2.3 控制地图 28717.3 翻译地理编码 28917.4 标注地图 29017.4.1 添加基本地图标注 29117.4.2 添加自定义地图标注 29217.5 小结 296第18章 使用Store Kit实现应用内购买 29718.1 建立沙盒测试环境 29718.1.1 创建iTunes测试用户 29818.1.2 添加产品 29918.2 创建一个简单的商店界面 30118.3 小结 309第19章 iPhone SDK增强功能 31119.1 自定义键盘附件 31119.1.1 扩展UITextField 31219.1.2 实现自定义UIText Field 31419.1.3 自定义键盘 31419.2 继续:iPhone 4.0 SDK 31619.2.1 多任务 31619.2.2 用户体验增强功能 31719.2.3 多媒体框架增强功能 31719.2.4 Game Center 31719.3 小结 318附录A iPhone OS类参考 319附录B 外部资源和参考资料 322附录C 发布SDK程序 324附录D 针对iPad更新当前应用程序 327
| ISBN | 9787115248589 |
|---|---|
| 出版社 | 人民邮电出版社 |
| 尺寸 | 16开 |