《iPhone与iPad开发实战》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:(美)特里比托斯基,(美)艾伦,(美)阿佩尔克莱因著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2011
  • ISBN:9787115248589
  • 页数:332 页
图书介绍:本书先介绍了Objective-C、Xcode、视图控制器和动作模型等基础知识,接着介绍了一些数据访问方法和出色的硬件功能,然后讨论了媒体、音频、图形、互联网等,最后展示了如何使用Game Kit框架、Map Kit框架和Store Kit框架等。

第1章 iPhone与iPad简介 1

1.1 历史回顾 1

1.2 人人为我,我为人人:iPhone OS平台 2

1.3 核心硬件规范 2

1.3.1 iPhone 2

1.3.2 iPad 3

1.3.3 iPod Touch 4

1.3.4 iPhone和iPad的输入及输出规范 4

1.3.5 iPhone和iPad网络规范 5

1.3.6 iPhone OS浏览器规范 6

1.3.7 移动Web标准 7

1.3.8 其他硬件特性 7

1.4 iPhone和iPad的独特之处 8

1.5 理解iPhone和iPad触摸式交互 9

1.6 小结 10

第2章 Objective-C和iPhone OS SDK 11

2.1 准备使用SDK 11

2.1.1 安装SDK 11

2.1.2 SDK剖析 13

2.2 Objective-C介绍 14

2.2.1 概述 14

2.2.2 消息 15

2.2.3 类定义 17

2.2.4 属性 18

2.2.5 其他编译器指令 20

2.2.6 类别和协议 20

2.2.7 Objective-C总结 21

2.3 iPhone OS介绍 22

2.3.1 iPhone OS剖析 22

2.3.2 iPhone OS的对象层次结构 23

2.3.3 窗口和视图 24

2.4 iPhone OS的方法 25

2.4.1 对象创建 25

2.4.2 内存管理 27

2.4.3 事件响应 28

2.4.4 生命周期管理 29

2.5 小结 30

第3章 使用Xcode 31

3.1 Xcode简介 31

3.1.1 剖析Xcode 31

3.1.2 在Xcode中编译和执行 33

3.2 在Xcode中创建第一个iPhone项目:Hello,World! 33

3.2.1 理解main.m 33

3.2.2 理解应用程序委托 34

3.2.3 编写“Hello,World!” 36

3.3 在Xcode中创建第一个iPad项目:Hello,World! 38

3.4 在Xcode中创新建类 39

3.4.1 新类简介 39

3.4.2 头文件 39

3.4.3 源代码文件 40

3.4.4 链接 42

3.5 Xcode的其他功能 42

3.5.1 使用Xcode添加框架 42

3.5.2 在Xcode中使用其他模板 42

3.5.3 Xcode提示和技巧 43

3.6 小结 44

第4章 使用Interface Builder 45

4.1 Interface Builder介绍 45

4.1.1 Interface Builder剖析 46

4.1.2 在Interface Builder中模拟 48

4.2 在Interface Builder中创建第一个项目:图片和网页 48

4.2.1 新建对象 48

4.2.2 操作图形对象 49

4.2.3 使用检查器窗口 49

4.2.4 使用图片 51

4.3 在Interface Builder中建立连接 52

4.3.1 声明IBOutlet 52

4.3.2 连接对象 53

4.3.3 使用IBOutlet编写代码 54

4.4 其他Interface Builder功能 55

4.4.1 建立其他连接 55

4.4.2 创建外部对象 55

4.4.3 初始化Interface Builder对象 56

4.4.4 访问.xib文件 56

4.4.5 新建.xib文件 57

4.5 小结 57

第5章 创建基本视图控制器 58

5.1 视图控制器家族 58

5.2 标准视图控制器 59

5.2.1 视图控制器剖析 60

5.2.2 创建视图控制器 60

5.2.3 创建另一个视图控制器 60

5.2.4 构建视图控制器界面 61

5.2.5 使用视图控制器 62

5.3 表视图控制器 66

5.3.1 剖析表视图控制器 66

5.3.2 创建表视图控制器 66

5.3.3 构建表界面 67

5.3.4 使用表视图控制器 72

5.4 小结 73

第6章 监控事件和动作 74

6.1 事件简介 74

6.1.1 响应者链 74

6.1.2 触摸和事件 76

6.2 触摸的例子:事件报告程序 77

6.2.1 在Interface Builder中构建应用程序 78

6.2.2 为触摸准备视图 79

6.2.3 控制事件 80

6.3 其他事件功能 82

6.3.1 规则化事件 82

6.3.2 其他事件方法和属性 83

6.4 动作简介 84

6.4.1 UIControl对象 84

6.4.2 控件事件和动作 84

6.4.3 使用addTarget:action:forControlEvents:方法 86

6.5 向应用程序添加按钮 86

6.5.1 使用addTarget:action:forControlEvents:与按钮 87

6.5.2 使用IBAction与按钮 87

6.6 其他动作功能 88

6.6.1 使用UITextField接受文本输入 88

6.6.2 允许使用UISlider来选择值 90

6.6.3 TextField/Slider组合 90

6.6.4 创建动作很容易 92

6.6.5 使用动作 92

6.7 通知简介 92

6.8 小结 93

第7章 创建高级视图控制器 94

7.1 标签栏视图控制器 94

7.1.1 剖析标签栏视图控制器 94

7.1.2 创建标签栏控制器 95

7.1.3 构建标签栏界面 97

7.1.4 使用标签栏控制器 100

7.2 导航控制器 101

7.2.1 剖析导航控制器 101

7.2.2 创建导航控制器 102

7.2.3 完成导航控制器 102

7.2.4 使用导航控制器 106

7.3 使用翻转控制器 108

7.4 分割视图控制器 110

7.4.1 创建分割视图控制器 110

7.4.2 构建分割视图控制器 112

7.4.3 使用分割视图控制器 115

7.4.4 为竖向模式和横向模式调整界面 116

7.5 弹出式视图控制器和模式视图控制器 116

7.5.1 创建弹出式视图控制器 117

7.5.2 创建模式视图控制器 117

7.6 小结 118

第8章 数据:动作、首选项和文件 119

8.1 接收用户动作 119

8.2 管理用户首选项 120

8.2.1 创建自己的首选项 121

8.2.2 使用系统设置 125

8.3 打开文件 129

8.3.1 访问软件包 130

8.3.2 访问其他目录 131

8.3.3 操纵文件 131

8.3.4 Filesaver:一个UITextView示例 132

8.4 小结 135

第9章 数据:高级技术 136

9.1 使用SQLite 136

9.1.1 设置SQLite数据库 137

9.1.2 访问SQLite 138

9.1.3 访问SQLite数据库 138

9.1.4 通过数据库构建导航菜单 139

9.1.5 本例的扩展 145

9.2 访问地址簿 145

9.2.1 框架概述 145

9.2.2 访问地址簿属性 146

9.2.3 查询地址簿 147

9.2.4 使用地址簿UI 149

9.3 Core Data简介 153

9.3.1 关于Core Data的背景知识 153

9.3.2 在应用程序中设置Core Data 154

9.3.3 初始化Core Data对象 155

9.3.4 为数据库添加对象 158

9.3.5 在Core Data中提取、更新和删除对象 158

9.4 小结 160

第10章 定位:加速计、位置和罗盘 161

10.1 加速计和方向 161

10.1.1 orientation属性 161

10.1.2 方向通知 162

10.2 加速计和移动 162

10.2.1 访问UIAccelerometer 163

10.2.2 解析UIAcceleration 163

10.2.3 查看重力 164

10.2.4 查看移动 166

10.2.5 识别简单的加速计移动 166

10.3 加速计和手势 168

10.4 Core Location 170

10.4.1 位置类 171

10.4.2 使用位置和距离的示例 172

10.4.3 使用海拔的示例 174

10.4.4 使用罗盘 177

10.4.5 Core Location和互联网 178

10.5 小结 178

第11章 媒体:图像和照相机 179

11.1 图像介绍 179

11.1.1 加载UIImage 180

11.1.2 绘制UIImageView 180

11.1.3 在UIKit中修改图像 181

11.2 利用Core Graphics绘制简单图像 182

11.3 访问照片 183

11.3.1 使用图像选取器 183

11.3.2 拍照 184

11.3.3 保存到相册 185

11.4 拼合:一个图像例子 185

11.4.1 拼合视图控制器 185

11.4.2 拼合临时图像视图 189

11.4.3 拼合视图 190

11.4.4 扩展这个例子 191

11.5 小结 191

第12章 媒体:音频和录音 192

12.1 播放iPod库中的音频 192

12.1.1 从iPod媒体库中检索音频条目 192

12.1.2 获取MPMediaItem的信息 194

12.1.3 使用MPMusicPlayerController播放媒体条目 194

12.1.4 示例:创建一个简单的媒体播放器应用程序 196

12.2 录制音频 198

12.2.1 初始化音频录音器 198

12.2.2 控制音频录音器 199

12.2.3 响应AVAudioRecorder事件 200

12.3 手动播放声音 201

12.3.1 初始化AVAudio Player 201

12.3.2 AVAudioPlayer Delegate 202

12.3.3 控制AVAudioPlayer 202

12.4 示例:创建一个简单的音频录制/播放应用程序 203

12.4.1 创建一个基于视图的应用程序 204

12.4.2 添加所需的框架 204

12.4.3 构建IBAction 204

12.4.4 创建界面 204

12.4.5 设置音频录音器并实现IBAction操作 205

12.5 录制、播放和访问视频 206

12.6 小结 207

第13章 图形:Quartz、Core Animation和OpenGL 209

13.1 Quartz 2D简介 209

13.2 Quartz上下文 210

13.2.1 在UIView上绘制图形 211

13.2.2 在位图上绘制图形 212

13.3 绘制路径 213

13.3.1 结束路径 214

13.3.2 创建可重用路径 214

13.3.3 绘制矩形 215

13.4 设置图形状态 216

13.4.1 设置颜色 216

13.4.2 变换 217

13.4.3 设置裁剪路径 219

13.4.4 其他设置 220

13.4.5 管理状态 220

13.5 Quartz中的高级绘图功能 220

13.5.1 绘制渐变 221

13.5.2 绘制图像 222

13.5.3 绘制文字 223

13.5.4 未介绍的内容 224

13.6 示例:在图片上绘图 224

13.6.1 PhotoDraw视图控制器 225

13.6.2 photodraw视图 226

13.6.3 扩展示例 228

13.7 Core Animation简介 229

13.7.1 Core Animation基础 230

13.7.2 Core Animation入门 230

13.7.3 绘制简单的隐式动画 230

13.7.4 绘制简单的显式动画 231

13.8 OpenGL简介 232

13.9 小结 232

第14章 Web:Web视图和互联网协议 234

14.1 互联网的层次结构 234

14.2 低层次联网 234

14.3 使用URL 236

14.3.1 创建NSURL 236

14.3.2 构建NSURLRequest 237

14.3.3 手动操作HTML数据 238

14.4 使用UIWebView 238

14.4.1 调用Web视图 239

14.4.2 管理Web视图委托 239

14.4.3 缩略图:一个Web视图例子 240

14.5 解析XML 242

14.5.1 启动NSXMLParser 242

14.5.2 充当委托 243

14.5.3 构建示例RSS阅读器 244

14.5.4 海拔高度重读:一个Core Location示例 248

14.6 提交给Web 250

14.6.1 手动提交 250

14.6.2 提交表单 251

14.7 访问社交网络 252

14.7.1 使用Web协议 252

14.7.2 使用TouchJSON 253

14.8 小结 255

第15章 使用Game Kit进行P2P连接 256

15.1 Game Kit概述 256

15.2 使用对等点选取器创建P2P应用程序 257

15.2.1 使用苹果公司的内置对等点选取器 257

15.2.2 实现GKSession Delegate方法 260

15.2.3 在对等点之间发送和接收数据 261

15.3 示例:创建一个多人乒乓球游戏 263

15.3.1 启动GKTennis项目 264

15.3.2 创建头文件 264

15.3.3 创建乒乓球游戏界面 265

15.3.4 游戏初始化 266

15.3.5 建立对等点选取器并进行连接 267

15.3.6 实现send和receive方法 268

15.3.7 游戏循环 270

15.3.8 用户交互 273

15.4 小结 274

第16章 推送通知服务 275

16.1 什么是推送通知 275

16.2 苹果公司的推送通知系统概述 276

16.3 准备在应用程序中使用推送通知服务 277

16.3.1 设置应用程序证书 278

16.3.2 建立供应配置文件 279

16.3.3 处理推送通知的代码 279

16.3.4 准备音频文件 281

16.4 使用PHP创建一个推送通知提供程序 281

16.4.1 创建SSL证书 282

16.4.2 实现PHP推送通知提供程序 283

16.5 小结 284

第17章 Map Kit框架 285

17.1 Map Kit概述 285

17.2 向应用程序添加地图 285

17.2.1 使用Interface Builder添加地图 285

17.2.2 用编程方式添加地图 287

17.2.3 控制地图 287

17.3 翻译地理编码 289

17.4 标注地图 290

17.4.1 添加基本地图标注 291

17.4.2 添加自定义地图标注 292

17.5 小结 296

第18章 使用Store Kit实现应用内购买 297

18.1 建立沙盒测试环境 297

18.1.1 创建iTunes测试用户 298

18.1.2 添加产品 299

18.2 创建一个简单的商店界面 301

18.3 小结 309

第19章 iPhone SDK增强功能 311

19.1 自定义键盘附件 311

19.1.1 扩展UITextField 312

19.1.2 实现自定义UIText Field 314

19.1.3 自定义键盘 314

19.2 继续:iPhone 4.0 SDK 316

19.2.1 多任务 316

19.2.2 用户体验增强功能 317

19.2.3 多媒体框架增强功能 317

19.2.4 Game Center 317

19.3 小结 318

附录A iPhone OS类参考 319

附录B 外部资源和参考资料 322

附录C 发布SDK程序 324

附录D 针对iPad更新当前应用程序 327