精通iOS开发(第6版)

出版日期:2014-9-1
ISBN:9787115368260
作者:纳丁 (Jack Nutting),Fredrik Olsson,David Mark,Jeff LaMarche
页数:536页

内容概要

作者简介:
Jack Nutting
资深苹果移动开发技术专家,首批Cocoa用户,技术图书作者。Objective-C和Cocoa框架的坚定拥护者。个人博客www.nuthole.com。
Fredrik Olsson
具有丰富的Cocoa和iPhone开发经验,从业经历丰富,从实时汇编到企业版Java开发。Objective-C和Cocoa框架的坚定拥护者。
David Mark
经验丰富的Mac技术开发专家,技术图书作者。他撰写过许多Mac平台和iOS开发方面的畅销书。David还是iOS/Android开发公司MartianCraft的联合创始人。
Jeff LaMarche
资深Mac与iOS开发人员,拥有20多年开发经验。他是MacTech Magazine和苹果公司开发人员网站的专栏作家。Jeff关于iOS开发的博文广受欢迎,其博客地址为www.iphonedevelopment.blogspot.com。

书籍目录

第1章 欢迎来到iOS世界  1
1.1 关于本书  1
1.2 必要条件  1
1.2.1 开发者选项  3
1.2.2 必备知识  3
1.3 编写iOS应用程序有何不同  4
1.3.1 只能同时运行一个应用  4
1.3.2 只有一个窗口  4
1.3.3 有限的访问权限  5
1.3.4 有限的响应时间  5
1.3.5 有限的屏幕大小  5
1.3.6 有限的系统资源  5
1.3.7 不支持垃圾回收  6
1.3.8 新功能  6
1.3.9 与众不同的交互方法  6
1.4 本书内容  7
1.5 这一版的新内容  8
1.6 准备开始吧  9
第2章 创建项目  10
2.1 在Xcode中创建项目  10
2.1.1 Xcode项目窗口  14
2.1.2 深入研究项目  22
2.2 界面构建器简介  23
2.2.1 文件格式  24
2.2.2 分镜  25
2.2.3 库  26
2.2.4 在视图中添加标签  27
2.2.5 属性修改  29
2.3 画龙点睛——美化iPhone应用  31
2.4 小结  33
第3章 实现基本交互  34
3.1 MVC方法  34
3.2 创建项目  35
3.3 视图控制器  36
3.3.1 输出接口和操作方法  37
3.3.2 清理视图控制器  40
3.3.3 设计用户界面  40
3.3.4 运行应用  50
3.3.5 样式文本  50
3.4 应用程序委托  51
3.5 小结  54
第4章 更丰富的用户界面  55
4.1 满是控件的屏幕  55
4.2 活跃控件、静态控件和被动控件  57
4.3 创建应用程序  58
4.4 实现图像视图和文本框  59
4.4.1 添加图像视图  59
4.4.2 调整图像视图的大小  62
4.4.3 设置视图属性  63
4.4.4 添加文本框  65
4.4.5 创建并关联输出接口  71
4.5 关闭键盘  73
4.5.1 输入完成后关闭键盘  73
4.5.2 通过触摸背景关闭键盘  74
4.5.3 添加滑动条和标签  77
4.5.4 添加顶部约束  78
4.5.5 创建并关联操作方法和输出接口  79
4.5.6 实现操作方法  79
4.6 实现开关、按钮和分段控件  80
4.6.1 添加两个带标签的开关  81
4.6.2 为开关创建并关联输出接口和操作方法  83
4.6.3 实现开关的操作方法  83
4.7 美化按钮  85
4.7.1 可拉伸图像  85
4.7.2 控件状态  86
4.7.3 为按钮创建并关联输出接口和操作方法  87
4.8 实现分段控件的操作方法  87
4.9 实现操作表单和警告视图  88
4.9.1 遵从操作表单委托方法  88
4.9.2 显示操作表单  89
4.9.3 最终调整  92
4.10 小结  92
第5章 自动旋转和自动调整大小  93
5.1 自动旋转机制  93
5.1.1 点、像素和Retina显示屏  94
5.1.2 自动旋转的实现方式  95
5.2 选择视图支持的方向  95
5.2.1 应用级支持的方向  96
5.2.2 单个控制器的旋转支持  97
5.3 使用约束设计界面  99
5.3.1 覆盖默认的约束  101
5.3.2 与屏幕等宽的标签  102
5.4 旋转时重构视图  104
5.4.1 创建并关联输出接口  106
5.4.2 旋转时移动按钮  106
5.5 小结  109
第6章 多视图应用  110
6.1 多视图应用的常见类型  110
6.2 多视图应用的体系结构  113
6.2.1 根控制器  115
6.2.2 内容视图剖析  116
6.3 构建View Switcher项目  116
6.3.1 创建视图控制器和分镜  117
6.3.2 修改应用委托  119
6.3.3 修改BIDSwitchView Controller.m  120
6.3.4 添加视图控制器  120
6.3.5 构建带有工具栏的视图  122
6.3.6 编写根视图控制器  124
6.3.7 实现内容视图  127
6.3.8 转换过程的动画效果  130
6.4 小结  132
第7章 分页栏与选取器  133
7.1 Pickers应用程序  134
7.2 委托和数据源  136
7.3 创建Pickers应用程序  136
7.3.1 创建视图控制器  136
7.3.2 添加分镜  137
7.3.3 创建分页栏控制器  138
7.3.4 初次运行  140
7.4 实现日期选取器  141
7.5 实现单滚轮选取器  144
7.5.1 构建视图  144
7.5.2 将控制器实现为数据源和委托  145
7.6 实现多滚轮取器  149
7.6.1 声明输出接口和操作方法  149
7.6.2 构建视图  149
7.6.3 实现控制器  150
7.7 实现内容取决于滚轮  152
7.8 使用自定义选取器创建一个简单游戏  158
7.8.1 编写控制器头文件  158
7.8.2 构建视图  159
7.8.3 添加图像资源  160
7.8.4 实现控制器  160
7.8.5 最后的细节  163
7.9 小结  166
第8章 表视图简介  167
8.1 表视图基础  167
8.1.1 表视图和表视图单元  168
8.1.2 分组表和无格式表  168
8.2 实现一个简单表  170
8.2.1 设计视图  170
8.2.2 编写控制器  171
8.2.3 添加一个图像  175
8.2.4 表视图单元样式  176
8.2.5 设置缩进级别  178
8.2.6 处理行的选择  179
8.2.7 更改字体大小和行高  180
8.3 定制表视图单元  182
8.3.1 向表视图单元添加子视图  182
8.3.2 创建UITableViewCell子类  183
8.3.3 从nib文件加载UITableViewCell  187
8.4 分组分区和索引分区  191
8.4.1 构建视图  191
8.4.2 导入数据  191
8.4.3 实现控制器  192
8.4.4 添加索引  196
8.5 解决状态栏干扰  197
8.6 实现搜索栏  198
8.7 小结  203
第9章 导航控制器和表视图  204
9.1 导航控制器  204
9.1.1 栈的概念  204
9.1.2 控制器栈  205
9.2 一个简单的字体浏览器:Fonts  206
9.2.1 子控制器  207
9.2.2 Font应用的基础框架  209
9.3 创建根视图控制器  213
9.4 初始化分镜  216
9.5 第一个子控制器:字体列表视图  218
9.5.1 设定字体列表的分镜  220
9.5.2 对根视图控制器的转场进行设置  221
9.6 创建字体尺寸视图控制器  222
9.6.1 设计字体尺寸视图控制器的分镜  224
9.6.2 对字体列表视图控制器的转场进行设置  224
9.7 创建字体信息视图控制器  225
9.7.1 设计字体信息视图控制器的分镜  226
9.7.2 设置约束  227
9.7.3 调整字体列表视图控制器的转场  228
9.7.4 我的收藏字体  229
9.8 改善表视图  229
9.8.1 实现轻扫删除  230
9.8.2 实现拖动排序  231
9.9 小结  232
第10章 集合视图  233
10.1 创建DialogViewer项目  233
10.2 修补视图控制器类  234
10.3 自定义单元  235
10.4 配置视图控制器  237
10.5 内容单元  239
10.6 实现流式布局  240
10.7 分区标题视图  241
10.8 小结  243
第11章 iPad开发注意事项  244
11.1 分割视图和浮动窗口  244
11.1.1 创建SplitView项目  246
11.1.2 在分镜中定义结构  248
11.1.3 使用代码定义功能  250
11.2 显示总统信息  256
11.3 创建浮动窗口  261
11.4 小结  267
第12章 应用设置及用户默认设置  268
12.1 设置捆绑包入门  268
12.2 应用:Bridge Control  269
12.2.1 创建项目  272
12.2.2 使用设置捆绑包  273
12.2.3 读取应用中的设置  286
12.2.4 在应用中修改默认设置  289
12.2.5 注册默认值  292
12.2.6 保证设置有效  293
12.3 小结  295
第13章 数据持久化基础知识  296
13.1 应用的沙盒  296
13.1.1 获取Documents目录  297
13.1.2 获取tmp目录  298
13.2 文件保存方案  298
13.2.1 单文件持久化  299
13.2.2 多文件持久化  299
13.3 属性列表  299
13.3.1 属性列表序列化  299
13.3.2 Persistence应用的第一个版本  300
13.4 对模型对象进行归档  305
13.4.1 遵循NSCoding协议  305
13.4.2 实现NSCopying协议  306
13.4.3 对数据对象进行归档和取消归档  307
13.4.4 归档应用  308
13.5 使用iOS内嵌的SQLite3  311
13.5.1 创建或打开数据库  312
13.5.2 绑定变量  313
13.5.3 SQLite3应用  314
13.6 使用Core Data  320
13.6.1 实体和托管对象  321
13.6.2 Core Data应用  324
13.7 小结  333
第14章 iCloud之旅  334
14.1 使用UIDocument管理文档存储  334
14.1.1 构建TinyPix  335
14.1.2 创建BIDTinyPixDocument类  336
14.1.3 主控制器代码  338
14.1.4 初始分镜  345
14.1.5 创建BIDTinyPixView类  347
14.1.6 设计分镜  351
14.2 添加iCloud支持  353
14.2.1 创建授权文件  353
14.2.2 如何查询  354
14.2.3 保存在哪里  356
14.2.4 将首选项保存到iCloud  357
14.3 小结  358
第15章 Grand Central Dispatch和后台处理  359
15.1 Grand Central Dispatch  359
15.2 SlowWorker简介  360
15.3 线程基础知识  362
15.4 工作单元  363
15.5 GCD:底层队列  364
15.5.1 傻瓜式操作  364
15.5.2 改进SlowWorker  365
15.6 后台处理  370
15.6.1 应用生命周期  371
15.6.2 状态更改通知  372
15.6.3 创建State Lab项目  373
15.6.4 执行状态的变化  374
15.6.5 利用执行状态更改  376
15.6.6 处理不活跃状态  377
15.6.7 处理后台状态  380
15.7 小结  387
第16章 使用Core Graphics绘图  388
16.1 Quartz 2D基础概念  388
16.2 Quartz 2D绘图方法  388
16.2.1 Quartz 2D图形环境  389
16.2.2 坐标系统  390
16.2.3 指定颜色  391
16.2.4 在环境中绘制图像  393
16.2.5 绘制形状:多边形、直线和曲线  393
16.2.6 Quartz 2D样例:图案、渐变色、虚线图  394
16.3 QuartzFun应用程序  394
16.3.1 构建QuartzFun应用程序  395
16.3.2 添加Quartz 2D绘制代码  404
16.3.3 优化QuartzFun应用程序  409
16.4 小结  412
第17章 Sprite Kit游戏框架  413
17.1 基础入门  413
17.1.1 自定义初始场景  414
17.1.2 隐藏状态栏  415
17.2 场景设置  415
17.3 玩家动作  418
17.3.1 向场景中插入玩家  418
17.3.2 触摸处理  419
17.3.3 玩家移动  420
17.3.4 几何运算  421
17.3.5 轻微摆动  421
17.4 创建你的敌人  422
17.5 在场景中放入敌人  423
17.6 开始射击  425
17.6.1 定义物理类别  425
17.6.2 创建BIDBulletNode类  425
17.6.3 应用物理知识  427
17.6.4 在场景中添加导弹  427
17.7 利用物理引擎攻击敌人  429
17.8 实现关卡  431
17.8.1 注意敌人  431
17.8.2 进入下一关卡  431
17.9 自定义碰撞  433
17.9.1 为SKNode添加类别  434
17.9.2 向敌人添加自定义碰撞行为  435
17.9.3 准确显示玩家生命  436
17.10 粒子系统  437
17.10.1 第一个粒子  437
17.10.2 向场景中加入粒子  440
17.11 游戏结束  441
17.12 开始场景  443
17.13 播放音乐  445
17.14 小结  446
第18章 轻点、触摸和手势  447
18.1 多点触控术语  447
18.2 响应者链  448
18.2.1 响应事件  448
18.2.2 转发事件:保持响应者链的活动状态  449
18.3 多点触控体系结构  450
18.4 4个手势通知方法  450
18.5 TouchExplorer应用  451
18.6 Swipes应用  454
18.6.1 自动手势识别  457
18.6.2 实现多指轻扫  459
18.7 检测多次轻点  460
18.8 检测捏合和旋转  465
18.9 自定义手势  469
18.9.1 CheckPlease应用  470
18.9.2 CheckPlease的触摸方法  472
18.10 小结  474
第19章 Core Location和Map Kit  475
19.1 位置管理器  476
19.1.1 设置精度  476
19.1.2 设置距离筛选器  476
19.1.3 启动位置管理器  477
19.1.4 合理使用位置管理器  477
19.2 位置管理器委托  477
19.2.1 获取位置更新  477
19.2.2 使用CLLocation获取纬度和经度  477
19.2.3 错误通知  479
19.3 开始构建Core Location  480
19.4 将移动路线展现在地图上  484
19.5 小结  488
第20章 陀螺仪和加速计  489
20.1 加速计物理特性  489
20.2 陀螺仪旋转特性  490
20.3 Core Motion和动作管理器  490
20.3.1 基于事件的动作  491
20.3.2 主动动作访问  496
20.3.3 加速计结果  498
20.4 检测摇动  498
20.4.1 内嵌的摇动检测  499
20.4.2 摇动与击碎  500
20.5 将加速计用做方向控制器  502
20.5.1 滚弹珠程序  503
20.5.2 实现BIDBallView类  505
20.5.3 计算弹珠运动  508
20.6 小结  510
第21章 摄像头和照片库  511
21.1 图像选取器和UIImagePicker-
Controller  511
21.2 实现图像选取器控制器委托  513
21.3 实际测试摄像头和照片库  514
21.3.1 设计界面  515
21.3.2 实现摄像头视图控制器  515
21.4 小结  519
第22章 应用本地化  520
22.1 本地化体系结构  520
22.2 字符串文件  521
22.2.1 字符串文件  522
22.2.2 本地化的字符串宏  522
22.3 现实中的iOS本地化应用  523
22.3.1 创建LocalizeMe  523
22.3.2 测试LocalizeMe  526
22.3.3 本地化项目  527
22.3.4 初始化分镜  530
22.3.5 创建并本地化字符串文件  532
22.3.6 应用显示名称的本地化  535
22.4 小结  536

作者简介

本书是iOS 应用开发基础教程,内容翔实,语言生动。作者结合大量实例,循序渐进地讲解了适用于iPhone/iPad 开发的基本流程。新版介绍强大的iOS 7 操作系统,涵盖Xcode 4 以来的新功能,书中所有案例全部重新编写。
本书具有较强通用性,iOS 开发新手可通过本书快速入门进阶,经验丰富的iOS 开发人员也能从中找到令人耳目一新的内容。


 精通iOS开发(第6版)下载 更多精彩书评



发布书评

 
 


精彩书评 (总计1条)

  •     ios的书挑了好几本,比如那本《ios编程》,看了半个月,果断打入冷宫。那本书的写作思路以及碎成渣的中文翻译,都让我不喜欢。这本书的翻译很好,至少能语句通顺,只是个别地方语句缺乏变化,读起来略感乏味,但整体上还是不错。另外这本书的内容安排我很喜欢,讲解非常细致,内容选择上也非常得当、合理,总之我是把它当作入门ios的第一本教材的。

精彩短评 (总计7条)

  •     如果是刚学习iOS,我不推荐这本书,看起来太累了。我前前后后花了几天的时间看了前面7章,我的感受是上帝啊,还好我是通过视频学习iOS的,要是看这本书,非把我累死而且可能厌恶iOS开发,很多知识点作者是想详细讲,但是由于书籍本身的缺陷,没办法讲的很形象,最后变成了大篇章的讲解某个知识点,其中整个逻辑贯穿几十页,反正我的思路没法很好的跟上。这本书,可能适合那些有几个月开发经验的iOS开发者取经并加深理解某些知识点吧,作为初学者千万别碰这本书,去网上找视频教程看都比这本书好,入门而已,不要过于深入了解某个知识点,会给自己的心里带来无形的压力。
  •     太入门了,入门的东西其实百度下就好了,买这么贵的书亏死了
  •     作为入门教程不推荐。大部分讲解的还是和UI相关的内容。
  •     名字有点忽悠人,其实是比较初级的书,入门还行,深度不够。
  •     用来入门很不错的,去年看的
  •     目前已经出到第七版(iOS8,例子是OC和Swift双语对照)了,第六版主要对应的还是iOS7(例子主要也是OC编写的),去年买的书,到这几天才开始看,有了一定的基础后,这本书看起来就很快了,纯当查漏补全,说是“精通”,但这本书却是很好的入门书籍,里面的例子一步步讲解得很透彻,如果自己跟着写一遍,一定会有很多收获的,另外这本书主要还是针对StoryBoard类型的Demo,建议看的时候自己也能把纯代码编写方式给理解理解,毕竟纯代码还是更常用、功能更强大的~(ps,最好的入门材料还是看斯坦福的公开课以及一些技术博客吧,同时练习为主(自己动手写代码最重要!),学习为辅,书太厚了,一开始看的话,不太好啃)
  •     这本书翻译的还不错,挑来挑去,我还是选了这本书当作第一本正式学习的入门读物,也在此推荐给大家。
 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024