标题：iPhone创意开发入门与实战
图书信息
  书 名: iPhone创意开发入门与实战
作　者：XMobileApp
出版社： 人民邮电出版社
出版时间： 2010年04月
ISBN: 9787115220943
开本： 16开
定价: 69.00 元
内容简介
《iPhone创意开发入门与实战》介绍了iPhone移动开发入门和实践方面的知识，主要内容包括iPhone功能简介、iPhone软件创意赏析、苹果软件商店、MacOSX入门、iPhone开发环境的搭建与工具使用、Objective-C语言、iPhoneHelloWorld应用程序、多视图应用开发、UI设计与开发、处理基本交互、事件处理、iPhone数据持久化、iPhone多媒体开发介绍、动画与2D/3D绘图、网络开发、硬件编程、使用API编程、iPhone多线程开发、应用程序本地化、iPhone测试以及多个iPhone开发案例和iPhone发展与展望等内容。
《iPhone创意开发入门与实战》内容全面、由浅入深，既向读者讲述了iPhone开发的基础知识，同时也提供了丰富的实际代码和实例操作，供读者参考和使用。
《iPhone创意开发入门与实战》适合初级iPhone开发和移动开发爱好者学习参考和使用。
作者简介
XMobileApp工作室成立时间：2008年11月团队成员来自索尼爱立信、摩托罗拉、诺基亚、阿尔卡特朗讯、爱立信、爱可信、思科、IBM、新浪等权威企业，目前团队规模已经达30多人，主要致力于iPhone、Android、BlackBerry、Windows Mobile、Symbian、J2ME、MTK等主流智能手机平台的应用开发。
工作室一直秉承产品设计为先导.在美国成立产品设计和市场团队，在美国市场已经有多款产品在App Store和Android Market上市，并有较高的下载量。工作室向企业提供3G产品设计包装方面的咨询服务，并且负责为公司设计、开发、推广产品。
图书目录
第1章 玩转iPhone 1
1.1 iPhone介绍 1
1.1.1 iPhone是一款革命性的移动电话 3
1.1.2 iPhone是一款宽屏iPod 3
1.1.3 iPhone是一款创新的互联网通信设备 3
1.1.4 iPhone的先进传感器 4
1.2 全球销售最火爆的手机——iPhone 4
1.3 iPhone完美体验 6
1.4 iPhone的功能及其扩展 10
1.5 小结 13
第2章 iPhone软件创意赏析 14
2.1 重力加速计 14
2.1.1 摇动 14
2.1.2 重力感应 15
2.2 屏幕摩擦创意 16
2.3 话筒 17
2.4 定位(GPS、指南针) 18
2.5 小结 19
第3章 苹果软件商店(App Store)及应用发布 20
3.1 本章资料来源 20
3.2 App Store的昨天、今天和明天 20
3.2.1 App Store的诞生 20
3.2.2 早行一载，领先数光年 21
3.2.3 App Store未来展望 23
3.3 用iTunes和iPhone浏览App Store 24
3.3.1 iTunes的使用 24
3.3.2 用iTunes购买软件并与手机同步 24
3.3.3 通过iPhone内置App Store直接购买软件 26
3.4 App Store软件分类原则 26
3.5 申请个人和企业开发账户 27
3.5.1 申请表、缴费和申请EIN(美国雇主编码) 27
3.5.2 初试iTunesConnect界面 30
3.5.3 生成并下载开发者Profile 32
3.6 安装Profile和真机调试 39
3.7 软件编译发布流程 41
3.7.1 获取发布Profile(Distribution Profile) 41
3.7.2 软件编译实践 43
3.7.3 程序相关文案和图片要求 44
3.7.4 iTunes Connect软件发布实践 44
3.8 什么样的程序会被拒绝？摸透苹果的脾气 46
3.8.1 明文规定 46
3.8.2 不成文的规矩 47
3.8.3 前车之鉴 47
3.9 分析软件销售情况，赚回第一桶金 48
3.9.1 软件销售状况统计 48
3.9.2 苹果的分成和支付办法 50
3.10 小结 50
第4章 iPhone开发概述 51
4.1 iPhone OS简介 51
4.1.1 iPhone OS的功能 52
4.1.2 iPhone OS的系统架构 53
4.1.3 iPhone OS的版本 58
4.2 iPhone SDK介绍 59
4.2.1 什么是iPhone SDK 59
4.2.2 iPhone SDK所包含的内容 59
4.2.3 iPhone SDK的下载及安装 60
4.3 iPhone开发框架 61
4.4 iPhone程序设计原则 62
4.5 与其他手机系统的比较 63
4.6 小结 64
第5章 Mac OS X入门 65
5.1 Mac OS X操作系统基础知识 65
5.2 Mac OS X系统安装 65
5.2.1 Mac OS X安装前的准备工作 66
5.2.2 Mac OS X安装步骤 66
5.3 Mac OS X的文件系统 69
5.3.1 Mac OS X系统主文件夹区域 69
5.3.2 Mac OS X主要文件系统格式 71
5.4 Mac OS X的系统结构 72
5.5 Mac OS X常用命令简介 73
5.5.1 进入命令行界面 73
5.5.2 命令行帮助系统 74
5.5.3 常用命令简介 75
5.6 小结 76
第6章 iPhone开发环境搭建与工具使用 77
6.1 Cocoa 77
6.1.1 什么是Cocoa 77
6.1.2 Cocoa框架 81
6.1.3 Cocoa开发环境 85
6.2 Xcode 87
6.2.1 Xcode简介 87
6.2.2 Xcode的使用 91
6.2.3 Xcode的调试工具使用 96
6.3 Interface Builder 99
6.3.1 Interface Builder简介 99
6.3.2 nib文件介绍 100
6.3.3 使用Interface Builder创建一个简单程序 101
6.4 Instruments介绍 104
6.5 Shark介绍 105
6.6 Dashcode介绍 106
6.7 Simulator介绍 106
6.8 小结 107
第7章 Objective-C语言 108
7.1 Objective-C语言概述 108
7.1.1 简单的Objective-C程序 108
7.1.2 解析Hello Objective-C程序 111
7.2 面向对象编程基础知识 111
7.2.1 认识对象 111
7.2.2 一个Objective-C的类 112
7.2.3 数据封装和存取方法 117
7.2.4 对象的实例化 118
7.3 继承 118
7.3.1 继承的基本知识 119
7.3.2 对继承的扩展 121
7.3.3 方法的覆盖 123
7.3.4 抽象类 124
7.4 内存管理 124
7.4.1 引用计数 124
7.4.2 自动释放 126
7.4.3 内存管理规则 128
7.4.4 垃圾回收 128
7.5 Foundation框架基础知识 129
7.5.1 Foundation框架简介 129
7.5.2 字符串NSString类 130
7.5.3 NSString类的方法 131
7.5.4 可变字符串 134
7.5.5 集合简介 135
7.5.6 数组 135
7.5.7 可变数组 136
7.5.8 字典 138
7.5.9 可变字典 139
7.6 面向对象编程进阶知识 140
7.6.1 存取器方法 140
7.6.2 对象的初始化 142
7.6.3 变量的作用域 146
7.6.4 id类型 147
7.6.5 @try异常处理 150
7.7 类目与协议 152
7.7.1 类目 153
7.7.2 协议 155
7.8 小结 158
第8章 iPhone HelloWorld应用程序 159
8.1 HelloWorld——开启iPhone开发之旅 159
8.1.1 新建一个iPhone工程 159
8.1.2 填写工程的信息 161
8.1.3 编程实现 164
8.1.4 运行项目 165
8.2 调试项目 166
8.2.1 设置断点 166
8.2.2 Debug 项目 168
8.2.3 断点调试 168
8.3 小结 170
第9章 VI设计与开发 171
9.1 iPhone用户界面设计 171
9.1.1 iPhone用户界面设计概述 171
9.1.2 iPhone用户界面设计原则 171
9.1.3 iPhone用户界面结构介绍 173
9.2 Windows和Views 173
9.2.1 概述 173
9.2.2 View的架构及坐标系 174
9.2.3 如何创建View层次结构 174
9.2.4 实时改变View的属性 176
9.3 各种功能条 180
9.3.1 概述 180
9.3.2 状态条 180
9.3.3 导航条 181
9.3.4 工具条 182
9.3.5 Tab bar 182
9.3.6 范例 183
9.4 弹出式视图 189
9.4.1 概述 189
9.4.2 Alerts 189
9.4.3 Action Sheets 190
9.4.4 Modal Views 190
9.4.5 范例 191
9.5 卷动视图 194
9.5.1 概述 194
9.5.2 表视图 194
9.5.3 文本视图 196
9.5.4 网页视图 197
9.6 SDK自带的其他界面元素简介 198
9.6.1 概述 198
9.6.2 Activity Indicators 198
9.6.3 Date and time pickers 199
9.6.4 Page Indicators 199
9.6.5 Pickers 199
9.6.6 Progress Views 200
9.6.7 Rounded Rectangle Buttons 200
9.6.8 Search Bars 201
9.6.9 Segmented Controls 202
9.6.10 Sliders 202
9.6.11 Text Fields 202
9.7 按钮、图标和图片 203
9.7.1 系统内置按钮和图标 203
9.7.2 自定义图标图片 203
9.7.3 程序图标和启动画面 203
9.8 键盘和输入法 204
9.8.1 概述 204
9.8.2 WebView中的键盘 204
9.8.3 文本输入控件弹出的键盘 205
9.9 小结 205
第10章 处理基本交互 206
10.1 MVC范型 206
10.2 视图控制器 207
10.2.1 视图控制器类 207
10.2.2 使用视图控制器 208
10.3 响应交互事件 209
10.3.1 Outlet和Action 210
10.3.2 nib/xib文件 211
10.3.3 使用nib文件和视图控制器 211
10.3.4 通过代码指定事件响应 211
10.4 范例 212
10.4.1 创建项目 213
10.4.2 创建视图控制器 213
10.4.3 应用程序委托 217
10.4.4 编辑用户界面(nib/xib文件) 219
10.4.5 附加功能 222
10.5 小结 223
第11章 多视图应用开发 224
11.1 多视图应用概述 224
11.2 一个简单的多视图应用 225
11.2.1 模态视图控制器 225
11.2.2 范例 225
11.3 使用Tab Bar管理多视图 228
11.3.1 创建UITabBarController 228
11.3.2 为UITabBarController创建视图控制器 228
11.3.3 范例 230
11.4 使用Navigation管理层次结构的视图 231
11.4.1 创建UINavigationController 232
11.4.2 为UINavigationController创建视图控制器 232
11.4.3 为Navigation Item创建自定义按钮和视图 232
11.4.4 使用编辑和完成按钮 233
11.4.5 使用表格呈现层次结构的数据 234
11.4.6 与Tab Bar配合 234
11.4.7 范例 234
11.5 使用Segmented Control切换视图 246
11.6 使用Page Control实现多页面 248
11.7 小结 250
第12章 事件处理 251
12.1 事件的产生和分发 251
12.1.1 基本概念 251
12.1.2 事件的分发 253
12.2 事件的产生和分发 254
12.2.1 事件处理函数 254
12.2.2 创建可拖动的视图 256
12.3 手势 257
12.3.1 轻扫 257
12.3.2 捏合 259
12.4 小结 261
第13章 iPhone数据持久化 262
13.1 文件管理 262
13.1.1 概述 262
13.1.2 文件路径结构 262
13.1.3 应用程序的备份、还原 263
13.1.4 文件路径的获取 264
13.1.5 文件操作 265
13.1.6 文件内容的读写 268
13.2 Application preferfences 272
13.2.1 概述 272
13.2.2 界面介绍 272
13.2.3 settings bundle适用范围 272
13.2.4 settings bundle介绍 273
13.2.5 Settings Bundle的使用 274
13.2.6 访问Application preferfences的值 275
13.3 SQLite 275
13.3.1 概述 275
13.3.2 SQLite基本知识 276
13.3.3 创建包含SQLite的项目 277
13.4 小结 284
第14章 iPhone多媒体开发介绍 285
14.1 图片 285
14.1.1 图片相关类介绍 285
14.1.2 iPhone图片浏览器开发实例 285
14.2 声音 296
14.2.1 iPhone操作系统声音相关API栈 296
14.2.2 理解Audio Session 297
14.2.3 为图片浏览器加上背景音乐 297
14.3 视频 304
14.3.1 如何播放视频 304
14.3.2 为电子相框程序加上视频播放功能 305
14.4 小结 307
第15章 动画与2D、3D绘图 308
15.1 概述 308
15.2 Core Animation动画 308
15.3 Quartz 2D绘图 309
15.3.1 是什么Quartz 2D 309
15.3.2 开始编程之前要知道的概念 309
15.3.3 实例 309
15.4 iPhone OpenGL ES编程 315
15.4.1 OpenGL ES基础 315
15.4.2 实例 316
15.5 小结 317
第16章 网络开发 318
16.1 iPhone网络编程概述 318
16.2 套接字编程 319
16.2.1 关于套接字 319
16.2.2 CFSocket 319
16.2.3 CFStream 323
16.2.4 范例(套接字TCP聊天程序) 325
16.3 HTTP/FTP连接 333
16.3.1 CFHTTP 333
16.3.2 CFFTP 334
16.3.3 NSURLConnection 335
16.3.4 范例(Web Service应用) 336
16.4 网络连接诊断 340
16.4.1 检查网络状态 340
16.4.2 使用CFNetDiagnostics 341
16.5 Bonjour服务 342
16.5.1 发布服务 342
16.5.2 浏览服务 343
16.5.3 浏览域 343
16.5.4 使用服务 344
16.6 点对点(Peer-to-Peer)连接 344
16.6.1 Session和Peer 344
16.6.2 公布服务和建立连接 345
16.6.3 交换数据 345
16.6.4 断开连接 346
16.6.5 Peer Picker 346
16.7 小结 346
第17章 硬件编程 347
17.1 概述 347
17.2 照相机和照片库 347
17.2.1 图像选取器(image picker)的使用 348
17.2.2 编写包含图像选取器的程序 349
17.3 加速计 352
17.3.1 加速计简介 352
17.3.2 iPhone加速计API简介 352
17.3.3 访问加速计 353
17.4 GPS和指南针 356
17.4.1 获取当前位置 356
17.4.2 获取方向 362
17.4.3 在地图上显示并标注 364
17.5 小结 371
第18章 实用API简介 372
18.1 剪切、复制和粘贴 372
18.1.1 千呼万唤始出来的cut、copy & paste 372
18.1.2 复制粘贴API的使用和注意事项 373
18.1.3 范例 374
18.2 Maps API 376
18.2.1 Maps API的解放之路 376
18.2.2 怎样使用Maps API 376
18.2.3 Maps API示例 377
18.3 通讯录API 384
18.3.1 通讯录API能干什么 384
18.3.2 如何读取通讯录 384
18.4 用mail编写界面发E-mail 385
18.4.1 导出内容的最简单方式——E-mail 385
18.4.2 在软件中调用iPhone自带的mail 385
18.5 通过API访问iPod媒体库 389
18.5.1 Media Lib API简介 389
18.5.2 通过Media Lib API给程序添加背景音乐 390
18.6 小结 394
第19章 iPhone多线程开发 395
19.1 线程简介 395
19.1.1 线程的含义 395
19.1.2 为什么要使用多线程 395
19.1.3 多线程的基本知识 396
19.2 iPhone创建和管理线程 396
19.2.1 Cocoa中的线程相关的类 396
19.2.2 iPhone线程实现方式 397
19.3 iPhone线程安全性 399
19.3.1 “锁”住线程 400
19.3.2 关于NSCondition 402
19.4 iPhone多线程编程实战演习 403
19.4.1 定时启动，倒计时开始 403
19.4.2 关于RunLoop 404
19.4.3 创建NSTimer对象 404
19.4.4 定时器实例代码——ViewFlash 405
19.5 小结 406
第20章 应用程序本地化 407
20.1 本地化程序简介 407
20.1.1 本地化的概念 407
20.1.2 程序的语言匹配 408
20.2 字符串文件的使用 409
20.2.1 字符串文件的内容和作用 409
20.2.2 使用NSLocalizedString宏 409
20.2.3 生成字符串文件 409
20.3 其他资源的本地化 412
20.3.1 本地化nib文件 412
20.3.2 本地化图片 413
20.3.3 本地化setting bundles 413
20.4 小结 415
第21章 iPhone测试相关 416
21.1 单元测试 416
21.2 Xcode中如何进行iPhone单元测试 417
21.3 调试 426
21.3.1 设置断点，查看内存状态 426
21.3.2 查看console和Crash log 428
21.4 程序优化 429
21.4.1 Instruments和shark工具介绍 429
21.4.2 用Instruments查找内存泄露 433
21.4.3 Shark使用实例 433
21.5 小结 435
第22章 iPhone开发案例1——计算器 436
22.1 计算器功能需求分析 436
22.2 计算器UI设计 437
22.3 计算器控制逻辑设计 440
22.3.1 计算器流程概述 440
22.3.2 模块设计 441
22.3.3 UI交互设计 441
22.3.4 运算逻辑设计 442
22.4 数据存储功能的实现 443
22.5 试用计算器 445
22.6 小结 445
第23章 iPhone开发案例2——看动画记英语字母 446
23.1 案例展示 446
23.2 边看边学——看动画学字母 446
23.3 相关API的使用 447
23.4 逻辑设计 447
23.4.1 创建应用程序 447
23.4.2 导入图像声音资源 448
23.5 实现图像视图 449
23.5.1 确定输出口 449
23.5.2 构建界面 449
23.5.3 关联输出口 451
23.5.4 指定操作 451
23.6 具体代码实现 452
23.7 小结 456
第24章 iPhone开发案例3——Visual Tips 457
24.1 需求分析 457
24.2 UI设计 457
24.3 程序流程设计 458
24.3.1 数据结构 458
24.3.2 图片存储 459
24.4 程序具体实现 459
24.4.1 RootViewController的实现 460
24.4.2 AddViewController的实现 461
24.4.3 DetailsViewController的实现 466
24.4.4 RootViewController的其他功能 466
24.4.5 数据保存 469
24.5 界面优化 469
24.6 小结 470
第25章 iPhone发展与展望 471
25.1 iPhone开发未来之路 471
25.1.1 预测苹果公司对iPhone平台的战略 471
25.1.2 来自其他厂家的竞争 472
25.2 iPhone App Store商业模式的发展 473
25.2.1 苹果vs.第三方软件开发商 473
25.2.2 在雷同软件面前如何立于不败之地 473
25.3 iPhone移动开发与应用发展趋势 474
25.3.1 iPhone用户需要什么 474
25.3.2 开发前景 474