iOS 9 开发指南

iOS 9 开发指南
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2015-12
版次: 1
ISBN: 9787115409652
定价: 99.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 779页
字数: 1480千字
正文语种: 简体中文
8人买过
  • 全书共39章,循序渐进地讲解了iOS 9应用开发的基本知识。本书从搭建开发环境讲起,依次讲解了Objective-C语言基础,Swift语言基础,Cocoa Touch,Xcode Interface Builder界面开发,使用Xcode编写MVC程序,文本框和文本视图,按钮和标签,滑块、步进和图像,开关控件和分段控件,Web视图控件、可滚动视图控件和翻页控件,提醒和操作表,工具栏、日期选择器,表视图,活动指示器、进度条和检索条,UIView,视图控制器,实现多场景和弹出框,UICollectionView和UIVisualEffectView控件,iPad弹出框和分割视图控制器,界面旋转、大小和全屏处理,图形,图像,图层和动画,声音服务,多媒体应用,定位处理,读写应用程序数据,触摸,手势识别和Force Touch,HomeKit智能家居应用开发,和硬件之间的操作,开发通用的项目程序,推服务和多线程,Touch ID,游戏开发,HealthKit健康应用开发,WatchKit智能手表开发等高级知识。本书内容全面,几乎涵盖了iOS 9应用开发所需要的主要内容,全书内容言简意赅,讲解方法通俗易懂,特别适合于初学者学习。
    本书适合iOS初学者、iOS程序员、iPhone开发人员、iPad开发人员学习,也可以作为相关培训学校和大专院校相关专业的教学用书。 管蕾,51CTO的Android和iOS专家,定期参加火狐召开的开发专家会议。拥有多年的移动通信和数据压缩传输相关开发经验,精通多种语言。带领团队开发了国内云服务器,开发过多款iOS应用程序,在苹果商店取得了骄人的下载成绩。 第一篇  必备技术篇
    第1章  IOS开发入门 2
    1.1  iOS系统介绍 2
    1.1.1  iOS发展史 2
    1.1.2  全新的版本——iOS 9 3
    1.2  开始iOS 9开发之旅 4
    1.3  工欲善其事,必先利其器——搭建开发环境 5
    1.3.1  Xcode 介绍 6
    1.3.2  下载并安装Xcode 7 6
    1.3.3  创建iOS 9项目并启动模拟器 8
    1.3.4  打开一个现有的iOS 9项目 10
    1.4  iOS 9中的常用开发框架 10
    1.4.1  Foundation框架简介 11
    1.4.2  Cocoa框架简介 12
    1.4.3  iOS程序框架 13
    第2章  使用Xcode开发环境详解 14
    2.1  基本面板介绍 14
    2.1.1  调试工具栏 15
    2.1.2  导航面板介绍 15
    2.1.3  检查器面板 18
    2.2  Xcode 7的基本操作 19
    2.2.1  改变公司名称 19
    2.2.2  通过搜索框缩小文件范围 19
    2.2.3  格式化代码 20
    2.2.4  代码缩进和自动完成 20
    2.2.5  文件内查找和替代 21
    2.2.6  快速定位到代码行 22
    2.2.7  快速打开文件 22
    2.2.8  使用书签 23
    2.2.9  自定义导航条 24
    2.2.10  使用Xcode帮助 24
    2.2.11  调试代码 25
    2.3  使用Xcode 7帮助系统 26
    第3章  Objective-C语言基础 27
    3.1  最耀眼的新星 27
    3.1.1  看一份统计数据 27
    3.1.2  究竟何为Objective-C 27
    3.1.3  为什么选择Objective-C 28
    3.2  Objective-C的优点及缺点 28
    3.3  一个简单的例子 29
    3.3.1  使用Xcode编辑代码 29
    3.3.2  基本元素介绍 31
    3.4  数据类型和常量 34
    3.4.1  int类型 35
    3.4.2  float类型 36
    3.4.3  double类型 36
    3.4.4  char类型 37
    3.4.5  字符常量 38
    3.4.6  id类型 39
    3.4.7  限定词 40
    3.4.8  总结基本数据类型 41
    3.5  字符串 42
    3.6  算数表达式 42
    3.6.1  运算符的优先级 43
    3.6.2  整数运算和一元负号运算符 44
    3.6.3  模运算符 45
    3.6.4  整型值和浮点值的相互转换 46
    3.6.5  类型转换运算符 46
    3.7  表达式 47
    3.7.1  常量表达式 47
    3.7.2  条件运算符 47
    3.7.3  sizeof运算符 48
    3.7.4  关系运算符 49
    3.7.5  强制类型转换运算符 49
    3.8  位运算符 50
    3.8.1  按位与运算符 50
    3.8.2  按位或运算符 50
    3.8.3  按位异或运算符 51
    3.8.4  一次求反运算符 51
    3.8.5  向左移位运算符 52
    3.8.6  向右移位运算符 52
    3.8.7  总结Objective-C的运算符 53
    第4章  Swift语言基础 55
    4.1  Swift概述 55
    4.1.1  Swift的创造者 55
    4.1.2  Swift的优势 56
    4.2  数据类型和常量 57
    4.2.1  int类型 57
    4.2.2  float类型 57
    4.2.3  double类型 58
    4.2.4  char类型 58
    4.2.5  字符常量 58
    4.3  变量和常量 58
    4.3.1  常量详解 58
    4.3.2  变量详解 59
    4.4  字符串和字符 60
    4.4.1  字符串字面量 60
    4.4.2  初始化空字符串 60
    4.4.3  字符串可变性 61
    4.4.4  值类型字符串 61
    4.4.5  计算字符数量 61
    4.4.6  连接字符串和字符 62
    4.4.7  字符串插值 62
    4.4.8  比较字符串 63
    4.4.9  Unicode 63
    4.5  流程控制 65
    4.5.1  for循环(1) 66
    4.5.2  for循环(2) 67
    4.5.3  while循环 67
    4.6  条件语句 68
    4.6.1  if语句 68
    4.6.2  switch语句 69
    4.7  函数 70
    4.7.1  函数的声明与调用 70
    4.7.2  函数的参数和返回值 71
    4.8  实战演练——使用Xcode创建Swift程序 72
    第5章  Cocoa Touch框架 74
    5.1  Cocoa Touch基础 74
    5.1.1  Cocoa Touch概述 74
    5.1.2  Cocoa Touch中的框架 75
    5.1.3   Cocoa Touch的优势 75
    5.2  iPhone的技术层 76
    5.2.1  Cocoa Touch层 76
    5.2.2  多媒体层 80
    5.2.3  核心服务层 80
    5.2.4  核心OS层 81
    5.3  Cocoa Touch中的框架 82
    5.3.1  Core Animation(图形处理)框架 82
    5.3.2  Core Audio(音频处理)框架 82
    5.3.3  Core Data(数据处理)框架 83
    5.4  Cocoa中的类 84
    5.4.1  核心类 84
    5.4.2  数据类型类 86
    5.4.3  UI界面类 87
    5.5  国际化 88
    5.6  使用Xcode学习iOS框架 89
    5.6.1  使用Xcode文档 89
    5.6.2  快速帮助 90
    第6章  Xcode Interface Builder界面开发 92
    6.1  Interface Builder基础 92
    6.2  和Interface Builder密切相关的库面板 94
    6.3  Interface Builder采用的方法 95
    6.4  Interface Builder中的故事板——Storyboarding 95
    6.4.1  推出的背景 95
    6.4.2  故事板的文档大纲 96
    6.4.3  文档大纲的区域对象 98
    6.5  创建一个界面 98
    6.5.1  对象库 98
    6.5.2  将对象加入到视图中 99
    6.5.3  使用IB布局工具 100
    6.6  定制界面外观 103
    6.6.1  使用属性检查器 103
    6.6.2  设置辅助功能属性 103
    6.6.3   测试界面 104
    6.7  iOS 9控件的属性 105
    6.8  实战演练——将设计界面连接到代码 105
    6.8.1  打开项目 105
    6.8.2   输出口和操作 106
    6.8.3  创建到输出口的连接 106
    6.8.4  创建到操作的连接 108
    6.9  实战演练——纯代码实现UI设计 109
    第7章  使用Xcode编写MVC程序 112
    7.1  MVC模式基础 112
    7.1.1  分析结构 112
    7.1.2  MVC的特点 113
    7.2  Xcode中的MVC 113
    7.2.1  原理 113
    7.2.2   模板就是给予MVC的 114
    7.3  在Xcode中实现MVC 114
    7.3.1  视图 115
    7.3.2  视图控制器 115
    7.4   数据模型 116
    7.5  实战演练——使用模板Single View Application 117
    7.5.1  创建项目 117
    7.5.2  规划变量和连接 120
    7.5.3  设计界面 122
    7.5.4  创建并连接输出口和操作 123
    7.5.5  实现应用程序逻辑 126
    7.5.6  生成应用程序 127
    7.6  实战演练——创建一个MVC程序(Swift版) 127
    第二篇  核心技术篇
    第8章  文本框和文本视图 132
    8.1  文本框(UITextField) 132
    8.1.1  文本框基础 132
    8.1.2  实战演练——控制是否显示TextField中信息 132
    8.1.3  实战演练——对输入内容的长度进行验证 134
    8.1.4  实战演练——实现用户登录框界面 135
    8.1.5  实战演练——实现一个UITextField控件(Swift版) 136
    8.2  文本视图(UITextView) 137
    8.2.1  文本视图基础 137
    8.2.2  实战演练——拖动输入的文本 138
    8.2.3  实战演练——自定义设置文字的行间距 139
    8.2.4  实战演练——自定义 UITextView 控件的样式 140
    8.2.5  实战演练——在指定的区域中输入文本(Swift版) 143
    第9章  按钮和标签 145
    9.1  标签(UILabel) 145
    9.1.1  标签(UILabel)的属性 145
    9.1.2  实战演练——使用UILabel显示一段文本 145
    9.1.3  实战演练——为文字分别添加上划线、下划线和中划线 147
    9.1.4  实战演练——显示被触摸单词的字母 148
    9.1.5  实战演练——显示一个指定样式的文本(Swift版) 150
    9.2  按钮(UIButton) 151
    9.2.1  按钮基础 151
    9.2.2  实战演练——自定义设置按钮的图案 152
    9.2.3  实战演练——实现了一个变换形状动画按钮 154
    9.3  实战演练——联合使用文本框、文本视图和按钮 155
    9.3.1  创建项目 155
    9.3.2  设计界面 156
    9.3.3  创建并连接输出口和操作 161
    9.3.4  实现按钮模板 162
    9.3.5  隐藏键盘 164
    9.3.6  实现应用程序逻辑 165
    9.3.7  总结执行 166
    9.4  实战演练——自定义一个按钮(Swift版) 168
    第10章  滑块、步进和图像 170
    10.1  滑块控件(UISlider) 170
    10.1.1  使用Slider 控件的基本方法 170
    10.1.2  实战演练——使用素材图片实现滑动条特效 171
    10.1.3  实战演练——实现自动显示刻度的滑动条 172
    10.1.4   实战演练——实现各种各样的滑块 174
    10.1.5  实战演练——自定义实现UISlider控件功能(Swift版) 177
    10.2  步进控件(UIStepper) 178
    10.2.1  步进控件介绍 178
    10.2.2  实战演练——自定义步进控件的样式 179
    10.2.3  实战演练——设置指定样式的步进控件 181
    10.2.4  实战演练——使用步进控件自动增减数字(Swift版) 185
    10.3  图像视图控件(UIImageView) 186
    10.3.1  UIImageView的常用操作 186
    10.3.2  实战演练——实现图像的模糊效果 187
    10.3.3  实战演练——滚动浏览图片 190
    10.3.4  实战演练——实现一个图片浏览器 191
    10.3.5  实战演练——使用UIImageView控件(Swift版) 193
    第11章  开关控件和分段控件  195
    11.1  开关控件(UISwitch) 195
    11.1.1  开关控件基础 195
    11.1.2  实战演练——改变UISwitch的文本和颜色 195
    11.1.3  实战演练——显示具有开关状态的开关 197
    11.1.4  实战演练——联合使用UISlider与UISwitch控件 198
    11.1.5  实战演练——控制是否显示密码明文(Swift版) 199
    11.2  分段控件(UISegmentedControl) 200
    11.2.1  分段控件的属性和方法 201
    11.2.2  实战演练——使用 UISegmentedControl控件 202
    11.2.3  实战演练——添加图标和文本 203
    11.2.4  实战演练——使用分段控件控制背景颜色 204
    11.2.5  实战演练——使用UISegmentedControl控件(Swift版) 205
    第12章  Web视图控件、可滚动视图控件和翻页控件 206
    12.1  Web视图(UIWebView) 206
    12.1.1  Web视图基础 206
    12.1.2  实战演练——在UIWebView控件中调用JavaScript 脚本 207
    12.1.3  实战演练——使用滑动条动态改变字体的大小 208
    12.1.4  实战演练——实现一个迷你浏览器工具 209
    12.1.5  实战演练——使用UIWebView控件加载网页(Swift版) 211
    12.2  可滚动的视图(UIScrollView) 212
    12.2.1  UIScrollView的基本用法 213
    12.2.2  实战演练——使用可滚动视图控件 213
    12.2.3  实战演练——滑动隐藏状态栏 216
    12.2.4  实战演练——使用UIScrollView控件(Swift版) 217
    12.3  实战演练——联合使用开关、分段控件和Web视图控件 218
    12.3.1  创建项目 219
    12.3.2  设计界面 219
    12.3.3  创建并连接输出口和操作 221
    12.3.4  实现应用程序逻辑 223
    12.3.5  调试运行 225
    12.4  翻页控件(UIPageControl) 225
    12.4.1  PageControll控件基础 225
    12.4.2  实战演练——自定义 UIPageControl 控件的的外观样式 226
    12.4.3  实战演练——实现一个图片播放器 228
    12.4.4  实战演练——实现一个图片浏览程序 230
    12.4.5  实战演练——使用UIPageControl控件设置4个界面(Swift版) 230
    第13章  提醒和操作表 232
    13.1  提醒视图(UIAlertView) 232
    13.1.1  UIAlertView基础 232
    13.1.2  实战演练——实现一个自定义提醒对话框 235
    13.1.3  实战演练——实现振动提醒框效果 236
    13.1.4  实战演练——自定义UIAlertView控件的外观 239
    13.1.5  实战演练——使用UIAlertView控件(Swift版) 242
    13.2  操作表(UIActionSheet) 243
    13.2.1  操作表的基本用法 243
    13.2.2  实战演练——实现特殊样式效果的UIActionSheet 244
    13.2.3  实战演练——实现Reeder阅读器效果 248
    13.2.4  实战演练——使用UIActionSheet控件定制一个按钮面板 251
    13.2.5  实战演练——使用UIActionsheet实现一个分享App(Swift版) 251
    第14章  工具栏、日期选择器 254
    14.1  工具栏(UIToolbar) 254
    14.1.1  工具栏基础 254
    14.1.2  实战演练——联合使用UIToolBar和UIView 255
    14.1.3  实战演练——自定义UIToolBar控件的颜色和样式 256
    14.1.4  实战演练——创建一个带有图标按钮的工具栏 261
    14.1.5  使用UIToolbar制作一个网页浏览器(Swift版) 262
    14.2  选择器视图(UIPickerView) 264
    14.2.1  选择器视图基础 264
    14.2.2  实战演练——实现两个UIPickerView控件间的数据依赖 266
    14.2.3  实战演练——自定义一个选择器 268
    14.2.4  实战演练——实现一个单列选择器 275
    14.2.5  实战演练——实现一个会发音的倒计时器(Swift版) 276
    14.3  日期选择控件(UIDatePicker) 278
    14.3.1  UIDatePicker基础 278
    14.3.2  实战演练——实现一个日期选择器 280
    14.3.3  实战演练——使用日期选择器自动选择一个时间 286
    14.3.4   实战演练——使用UIDatePicker控件(Swift版) 287
    第15章  表视图 290
    15.1  表视图基础 290
    15.1.1  表视图的外观 290
    15.1.2  表单元格 290
    15.1.3  添加表视图 290
    15.1.4  UITableView详解 294
    15.2  实战演练 296
    15.2.1  实战演练——拆分表视图 296
    15.2.2  实战演练——自定义UITableViewCell 298
    15.2.3  实战演练——实现一个图文样式联系人列表效果 302
    15.2.4   实战演练——在表视图中动态操作单元格(Swift版) 304
    第16章  活动指示器、进度条和检索条 306
    16.1  活动指示器(UIActivityIndicatorView) 306
    16.1.1  活动指示器基础 306
    16.1.2  实战演练——自定义UIActivityIndicatorView控件的样式 306
    16.1.3  实战演练——自定义活动指示器的显示样式 309
    16.1.4  实战演练——实现不同外观的活动指示器效果 312
    16.1.5  实战演练——使用UIActivityIndicatorView控件(Swift版) 313
    16.2  进度条(UIProgressView) 314
    16.2.1  进度条基础 314
    16.2.2  实战演练——自定义进度条的外观样式 314
    16.2.3  实战演练——实现多个具有动态条纹背景的进度条 315
    16.2.4  实战演练——自定义一个指定外观样式的进度条 317
    16.2.5  实战演练——实现自定义进度条效果(Swift版) 321
    16.3  检索条(UISearchBar) 322
    16.3.1  检索条基础 322
    16.3.2  实战演练——在查找信息输入关键字时实现自动提示功能 323
    16.3.3  实战演练——实现文字输入的自动填充和自动提示功能 326
    16.3.4  实战演练——使用检索控件快速搜索信息 329
    16.3.5   使用UISearchBar控件 331
    第17章  UIView详解 333
    17.1  UIView基础 333
    17.1.1  UIView的结构 333
    17.1.2  视图架构 335
    17.1.3  视图层次和子视图管理 335
    17.2  实战演练——给任意UIView视图四条边框加上阴影 336
    17.3  实战演练——给UIView加上各种圆角、边框效果 338
    17.4  实战演练——使用UIView控件实现弹出式动画表单效果 343
    17.5  实战演练——创建一个滚动图片浏览器(Swift版) 344
    第18章  视图控制器 349
    18.1  导航控制器(UIViewController)简介 349
    18.1.1  UIViewController基础 349
    18.1.2  实战演练——实现可以移动切换的视图效果 350
    18.1.3  实战演练——实现手动旋转屏幕的效果 353
    18.1.4  实战演练——实现会员登录系统(Swift版) 354
    18.2  使用UINavigationController 355
    18.2.1  UINavigationController详解 356
    18.2.2  实战演练——使用导航控制器展现3个场景 358
    18.2.3  实战演练——实现一个界面导航条功能 362
    18.2.4  实战演练——创建主从关系的“主-子”视图(Swift版) 364
    18.3  选项卡栏控制器 365
    18.3.1  选项卡栏和选项卡栏项 366
    18.3.2  实战演练——使用选项卡栏控制器构建3个场景 368
    18.3.3  实战演练——使用动态单元格定制表格行 372
    18.3.4  开发一个界面选择控制器(Swift版) 373
    第三篇  技术进阶篇
    第19章  实现多场景和弹出框 376
    19.1  多场景故事板 376
    19.1.1  多场景故事板基础 376
    19.1.2  创建多场景项目 377
    19.1.3  实战演练——使用第二个视图来编辑第一个视图中的信息 380
    19.1.4  实战演练——实现多个视图之间的切换 384
    19.2  实战演练——多场景视图数据传输(Swift版) 388
    第20章  UICollectionView和UIVisual EffectView控件 391
    20.1  UICollectionView控件详解 391
    20.1.1  UICollectionView的构成 391
    20.1.2  实现一个简单的UICollectionView 392
    20.1.3  自定义的UICollectionViewLayout 394
    20.1.4  实战演练——使用UICollectionView控件实现网格效果 395
    20.1.5  实战演练——实现大小不相同的网格效果 398
    20.1.6  实战演练——实现Pinterest样式的布局效果(Swift版) 400
    20.2  UIVisualEffectView控件详解 402
    20.2.1  UIVisualEffectView基础 402
    20.2.2  使用VisualEffectView控件实现模糊特效 404
    20.2.3  使用Visual Effect View实现Vibrancy效果 404
    20.2.4  实战演练——在屏幕中实现了模糊效果 406
    20.2.5  实战演练——在屏幕中实现了模糊效果 407
    20.2.6  实战演练——编码实现指定图像的模糊效果(Swift版) 409
    第21章  iPad弹出框和分割视图控制器 411
    21.1  iPad弹出框 411
    21.1.1  创建弹出框 411
    21.1.2  创建弹出切换 411
    21.1.3  手工显示弹出框 413
    21.1.4  响应用户关闭弹出框 413
    21.1.5  以编程方式创建并显示弹出框 414
    21.1.6  实战演练——使用弹出框更新内容 416
    21.2  探索分割视图控制器 418
    21.2.1  分割视图控制器基础 418
    21.2.2  表视图实战演练 420
    第22章  界面旋转、大小和全屏处理 425
    22.1  启用界面旋转 425
    22.1.1  界面旋转基础 425
    22.1.2  实战演练——实现界面自适应(Swift版) 426
    22.2  设计可旋转和调整大小的界面 427
    22.2.1  自动旋转和自动调整大小 427
    22.2.2  调整框架 427
    22.2.3  切换视图 427
    22.2.4  实战演练——使用Interface Builder创建可旋转和调整大小的界面 427
    22.2.5  实战演练——在旋转时调整控件 430
    22.2.6  实战演练——旋转时切换视图 433
    22.2.7  实战演练——实现屏幕视图的自动切换(Swift版) 436
    第23章  图形、图像、图层和动画 437
    23.1  图形处理 437
    23.1.1  iOS的绘图机制 437
    23.1.2  实战演练——在屏幕中绘制一个三角形 438
    23.1.3  实战演练——使用CoreGraphic实现绘图操作 439
    23.1.4  使用Quartz 2D绘制移动的曲线(Swift版) 442
    23.2  图像处理 443
    23.2.1  实战演练——实现颜色选择器/调色板功能 443
    23.2.2  实战演练——在屏幕中绘制一个图像 444
    23.3  图层 446
    23.3.1  视图和图层 446
    23.3.2  实战演练——实现图片、文字以及翻转效果 447
    23.3.3  实战演练——滑动展示不同的图片 448
    23.3.4  实战演练——演示CALayers图层的用法(Swift版) 449
    23.4  实现动画 450
    23.4.1  UIImageView动画 450
    23.4.2  视图动画UIView 450
    23.4.3  Core Animation详解 454
    23.4.4  实战演练——使用图像动画 455
    23.4.5  实战演练——实现UIView分类动画效果 463
    23.4.6  实战演练——动画样式显示电量使用情况 465
    23.4.7  实战演练——图形图像的人脸检测处理(Swift版) 468
    第24章  声音服务 472
    24.1  访问声音服务 472
    24.1.1  声音服务基础 472
    24.1.2  实战演练——播放声音文件 473
    24.1.3  实战演练——使用AudioToolbox播放列表中的音乐(Swift版) 476
    24.2  提醒和振动 479
    24.2.1  播放提醒音 480
    24.2.2  实战演练——实用iOS的提醒功能 480
    24.2.3  实战演练——实现两种类型的振动效果(Swift版) 488
    第25章  多媒体应用 490
    25.1  Media Player框架 490
    25.1.1  Media Player框架中的类 490
    25.1.2  实战演练——使用Media Player播放视频 491
    25.1.3  实战演练——边下载边播放视频 493
    25.1.4  实战演练——播放指定的视频(Swift版) 495
    25.2  AV Foundation框架 497
    25.2.1  准备工作 497
    25.2.2  使用AV音频播放器 497
    25.2.3  实战演练——使用AV Foundation框架播放视频 498
    25.2.4  实战演练——使用AVAudioPlayer播放和暂停指定的MP3(Swift版) 501
    25.3  图像选择器(UIImagePickerController) 501
    25.3.1  使用图像选择器 501
    25.3.2  实战演练——获取图片并缩放 502
    25.3.3  实战演练——通过弹出式菜单选择相机中的照片(Swift版) 506
    25.4  实战演练——实现一个多媒体的应用程序 507
    25.4.1  实现概述 507
    25.4.2  创建项目 508
    25.4.3  设计界面 509
    25.4.4  创建并连接输出口和操作 509
    25.4.5  实现电影播放器 510
    25.4.6  实现音频录制和播放 511
    25.4.7  使用照片库和相机 514
    25.4.8  实现Core Image滤镜 515
    25.4.9  访问并播放音乐库 516
    第26章  定位处理 520
    26.1  Core Location框架 520
    26.1.1  Core Location基础 520
    26.1.2  使用流程 520
    26.1.3  实战演练——定位显示当前的位置信息(Swift版) 523
    26.2  获取位置 526
    26.2.1  位置管理器委托 526
    26.2.2  获取航向 527
    26.3  地图功能 528
    26.3.1  Map Kit基础 528
    26.3.2  为地图添加标注 529
    26.3.3  实战演练——在地图中定位当前的位置信息(Swift版) 530
    26.4  实战演练——创建一个支持定位的应用程序 531
    26.4.1  创建项目 531
    26.4.2  设计视图 532
    26.4.3  创建并连接输出口 533
    26.4.4  实现应用程序逻辑 533
    26.4.5  生成应用程序 535
    26.5  实战演练——定位当前的位置信息 535
    26.6  实战演练——在地图中绘制导航线路 538
    第27章  读写应用程序数据 541
    27.1  iOS应用程序和数据存储 541
    27.2  用户默认设置 542
    27.3  设置束 542
    27.3.1  设置束基础 543
    27.3.2  实战演练——通过隐式首选项实现一个手电筒程序 544
    27.4  直接访问文件系统 547
    27.4.1  应用程序数据的存储位置 547
    27.4.2  获取文件路径 548
    27.4.3  读写数据 548
    27.4.4  读取和写入文件 549
    27.4.5  通过plist文件存取文件 550
    27.4.6  保存和读取文件 552
    27.4.7  文件共享和文件类型 552
    27.4.8  实战演练——实现一个用户信息收集器 553
    27.5  iCloud存储 557
    27.6  使用SQLite3存储和读取数据 557
    27.7  核心数据 561
    27.7.1  Core Data基础 561
    27.7.2  实战演练——使用CoreData 动态添加、删除数据 562
    27.8  互联网数据 567
    27.8.1  XML和JSON 567
    27.8.2  实战演练——使用JSON获取网站中的照片信息 570
    第四篇  技术提高篇
    第28章  触摸、手势识别和Force Touch  574
    28.1  多点触摸和手势识别基础 574
    28.2  触摸处理 575
    28.2.1  触摸事件和视图 575
    28.2.2  iOS中的手势操作 577
    28.2.3  实战演练——触摸的方式移动视图 578
    28.2.4  实战演练——触摸挪动彩色方块(Swift版) 578
    28.3  手势处理 582
    28.3.1  手势处理基础 582
    28.3.2  实战演练——实现一个手势识别器 586
    28.3.3  实战演练——识别手势并移动屏幕中的方块(Swift版) 591
    28.4  Force Touch技术 594
    28.4.1  Force Touch介绍 595
    28.4.2  Force Touch APIs介绍 595
    28.4.3  实战演练——使用Force Touch 596
    28.4.4  实战演练——启动Force Touch触控面板 598
    第29章  和硬件之间的操作 600
    29.1  加速计和陀螺仪 600
    29.1.1  加速计基础 600
    29.1.2  陀螺仪 604
    29.1.3  实战演练——检测倾斜和旋转 604
    29.1.4  实战演练——使用Motion传感器(Swift版) 608
    29.2  访问朝向和运动数据 609
    29.2.1  两种方法 610
    29.2.2  实战演练——检测当前设备的朝向 611
    29.3 实战演练——传感器综合练习(Swift版) 613
    第30章  地址簿、邮件和Twitter  622
    30.1  地址簿 622
    30.1.1  框架Address Book UI 622
    30.1.2  框架Address Book 623
    30.2  Message UI电子邮件 624
    30.2.1  Message UI基础 624
    30.2.2  实战演练——使用Message UI发送邮件(Swift版) 625
    30.3  使用Twitter发送推特信息 626
    30.3.1  Twitter基础 626
    30.3.2  实战演练——开发一个Twitter客户端(Swift版) 626
    30.4  实战演练——联合使用地址簿、电子邮件、Twitter和地图 629
    30.4.1  创建项目 630
    30.4.2  设计界面 630
    30.4.3  创建并连接输出口和操作 631
    30.4.4  实现地址簿逻辑 631
    30.4.5  实现地图逻辑 633
    30.4.6  实现电子邮件逻辑 635
    30.4.7  实现Twitter逻辑 636
    30.4.8  调试运行 636
    第31章  开发通用的项目程序 637
    31.1  开发通用应用程序 637
    31.1.1  在iOS 6中开发通用应用程序 637
    31.1.2  在iOS 6+中开发通用应用程序 638
    31.1.3  图标文件 645
    31.1.4  启动图像 646
    31.2  实战演练——使用通用程序模板创建通用应用程序 646
    31.2.1  创建项目 646
    31.2.2  设计界面 646
    31.2.3  创建并连接输出口 647
    31.2.4  实现应用程序逻辑 647
    31.3  实战演练——使用视图控制器 648
    31.3.1  创建项目 648
    31.3.2  设计界面 649
    31.3.3  创建并连接输出口 650
    31.3.4  实现应用程序逻辑 650
    31.3.5  生成应用程序 650
    31.4  实战演练——使用多个目标 651
    31.4.1  将iPhone目标转换为iPad目标 651
    31.4.2  将iPad目标转换为iPhone目标 651
    31.5  实战演练——创建基于“主—从”视图的应用程序 652
    31.5.1  创建项目 652
    31.5.2  调整iPad界面 653
    31.5.3  调整iPhone界面 654
    31.5.4  实现应用程序数据源 655
    31.5.5  实现主视图控制器 657
    31.5.6  实现细节视图控制器 658
    31.5.7  调试运行 659
    第32章  推服务和多线程 660
    32.1  推服务 660
    32.1.1  推服务介绍 660
    32.1.2  推服务的机制 661
    32.2  多线程 661
    32.2.1  多线程基础 661
    32.2.2  iOS中的多线程 663
    32.2.3  线程的同步与锁 667
    32.2.4  线程的交互 668
    32.3  ARC机制 669
    32.3.1  ARC概述 669
    32.3.2  ARC中的新规则 670
    第33章  Touch ID详解 671
    33.1  开发Touch ID应用程序 671
    33.1.1  Touch ID的官方资料 671
    33.1.2  开发Touch ID应用程序的步骤 672
    33.2  实战演练——使用Touch ID认证 673
    33.3  实战演练——使用Touch ID密码和指纹认证 674
    33.4  实战演练——Touch ID认证的综合演练 678
    第34章  游戏开发 684
    34.1  Sprite Kit框架基础 684
    34.1.1  Sprite Kit的优点和缺点 684
    34.1.2  Sprite Kit、Cocos2D、Cocos2D-X和Unity的选择 684
    34.2  实战演练——开发一个Sprite Kit游戏程序 685
    34.3  实战演练——开发一个四子棋游戏(Swift版) 693
    第35章  watchOS 2智能手表开发 704
    35.1  Apple Watch介绍 704
    35.2  WatchKit开发详解 705
    35.2.1  搭建WatchKit开发环境 706
    35.2.2  WatchKit架构 706
    35.2.3  WatchKit布局 708
    35.2.4  Glances和Notifications 708
    35.2.5  Watch App的生命周期 708
    35.3  开发Apple Watch应用程序 709
    35.3.1  创建Watch应用 710
    35.3.2  创建Glance界面 710
    35.3.3  自定义通知界面 710
    35.3.4  配置Xcode项目 710
    35.4  实战演练——实现AppleWatch界面布局 713
    35.5  实战演练——演示AppleWatch的日历事件 715
    35.6  实战演练——在手表中控制小球的移动 719
    35.7  实战演练——实现一个Watch录音程序 720
    第36章  HomeKit智能家居应用开发 730
    36.1  HomeKit基础 730
    36.1.1  苹果HomeKit如何牵动全国智能硬件格局 730
    36.1.2  给开发者和厂家提供的巨大机会 731
    36.1.3  苹果正式推出HomeKit硬件标准 731
    36.2  HomeKit开发基础 732
    36.2.1  HomeKit应用程序的层次模型 732
    36.2.2  HomeKit程序架构模式 733
    36.2.3  HomeKit中的类 734
    36.3  实战演练——实现一个HomeKit控制程序 735
    36.4  实战演练——WatchKit+HomeKit实现一个智能家居控制程序(Swift版) 739
    第37章  HealthKit健康应用开发 748
    37.1  HealthKit基础 748
    37.1.1  Healthkit介绍 748
    37.1.2  市面中的Healthkit应用现状 748
    37.1.3  接入Healthkit的好处 749
    37.2  HealthKit开发基础 750
    37.2.1  开发要求 750
    37.2.2  HealthKit开发思路 750
    37.3  实战演练——检测一天消耗掉的能量 751
    37.4  实战演练——心率检测(Swift版) 760
    第五篇  综合实战篇
    第38章  分析开源中国客户端 764
    38.1  系统介绍 764
    38.2  系统主界面 765
    38.3  多线程处理 767
    第39章  综合性智能手表管理系统(Swift版) 771
    39.1  系统介绍 771
    39.2  创建工程项目 771
    39.3  iPhone端的具体实现 772
    39.4  Watch端的具体实现 774
    39.4.1  主界面视图 774
    39.4.2  各个子界面视图的具体实现 776
  • 内容简介:
    全书共39章,循序渐进地讲解了iOS 9应用开发的基本知识。本书从搭建开发环境讲起,依次讲解了Objective-C语言基础,Swift语言基础,Cocoa Touch,Xcode Interface Builder界面开发,使用Xcode编写MVC程序,文本框和文本视图,按钮和标签,滑块、步进和图像,开关控件和分段控件,Web视图控件、可滚动视图控件和翻页控件,提醒和操作表,工具栏、日期选择器,表视图,活动指示器、进度条和检索条,UIView,视图控制器,实现多场景和弹出框,UICollectionView和UIVisualEffectView控件,iPad弹出框和分割视图控制器,界面旋转、大小和全屏处理,图形,图像,图层和动画,声音服务,多媒体应用,定位处理,读写应用程序数据,触摸,手势识别和Force Touch,HomeKit智能家居应用开发,和硬件之间的操作,开发通用的项目程序,推服务和多线程,Touch ID,游戏开发,HealthKit健康应用开发,WatchKit智能手表开发等高级知识。本书内容全面,几乎涵盖了iOS 9应用开发所需要的主要内容,全书内容言简意赅,讲解方法通俗易懂,特别适合于初学者学习。
    本书适合iOS初学者、iOS程序员、iPhone开发人员、iPad开发人员学习,也可以作为相关培训学校和大专院校相关专业的教学用书。
  • 作者简介:
    管蕾,51CTO的Android和iOS专家,定期参加火狐召开的开发专家会议。拥有多年的移动通信和数据压缩传输相关开发经验,精通多种语言。带领团队开发了国内云服务器,开发过多款iOS应用程序,在苹果商店取得了骄人的下载成绩。
  • 目录:
    第一篇  必备技术篇
    第1章  IOS开发入门 2
    1.1  iOS系统介绍 2
    1.1.1  iOS发展史 2
    1.1.2  全新的版本——iOS 9 3
    1.2  开始iOS 9开发之旅 4
    1.3  工欲善其事,必先利其器——搭建开发环境 5
    1.3.1  Xcode 介绍 6
    1.3.2  下载并安装Xcode 7 6
    1.3.3  创建iOS 9项目并启动模拟器 8
    1.3.4  打开一个现有的iOS 9项目 10
    1.4  iOS 9中的常用开发框架 10
    1.4.1  Foundation框架简介 11
    1.4.2  Cocoa框架简介 12
    1.4.3  iOS程序框架 13
    第2章  使用Xcode开发环境详解 14
    2.1  基本面板介绍 14
    2.1.1  调试工具栏 15
    2.1.2  导航面板介绍 15
    2.1.3  检查器面板 18
    2.2  Xcode 7的基本操作 19
    2.2.1  改变公司名称 19
    2.2.2  通过搜索框缩小文件范围 19
    2.2.3  格式化代码 20
    2.2.4  代码缩进和自动完成 20
    2.2.5  文件内查找和替代 21
    2.2.6  快速定位到代码行 22
    2.2.7  快速打开文件 22
    2.2.8  使用书签 23
    2.2.9  自定义导航条 24
    2.2.10  使用Xcode帮助 24
    2.2.11  调试代码 25
    2.3  使用Xcode 7帮助系统 26
    第3章  Objective-C语言基础 27
    3.1  最耀眼的新星 27
    3.1.1  看一份统计数据 27
    3.1.2  究竟何为Objective-C 27
    3.1.3  为什么选择Objective-C 28
    3.2  Objective-C的优点及缺点 28
    3.3  一个简单的例子 29
    3.3.1  使用Xcode编辑代码 29
    3.3.2  基本元素介绍 31
    3.4  数据类型和常量 34
    3.4.1  int类型 35
    3.4.2  float类型 36
    3.4.3  double类型 36
    3.4.4  char类型 37
    3.4.5  字符常量 38
    3.4.6  id类型 39
    3.4.7  限定词 40
    3.4.8  总结基本数据类型 41
    3.5  字符串 42
    3.6  算数表达式 42
    3.6.1  运算符的优先级 43
    3.6.2  整数运算和一元负号运算符 44
    3.6.3  模运算符 45
    3.6.4  整型值和浮点值的相互转换 46
    3.6.5  类型转换运算符 46
    3.7  表达式 47
    3.7.1  常量表达式 47
    3.7.2  条件运算符 47
    3.7.3  sizeof运算符 48
    3.7.4  关系运算符 49
    3.7.5  强制类型转换运算符 49
    3.8  位运算符 50
    3.8.1  按位与运算符 50
    3.8.2  按位或运算符 50
    3.8.3  按位异或运算符 51
    3.8.4  一次求反运算符 51
    3.8.5  向左移位运算符 52
    3.8.6  向右移位运算符 52
    3.8.7  总结Objective-C的运算符 53
    第4章  Swift语言基础 55
    4.1  Swift概述 55
    4.1.1  Swift的创造者 55
    4.1.2  Swift的优势 56
    4.2  数据类型和常量 57
    4.2.1  int类型 57
    4.2.2  float类型 57
    4.2.3  double类型 58
    4.2.4  char类型 58
    4.2.5  字符常量 58
    4.3  变量和常量 58
    4.3.1  常量详解 58
    4.3.2  变量详解 59
    4.4  字符串和字符 60
    4.4.1  字符串字面量 60
    4.4.2  初始化空字符串 60
    4.4.3  字符串可变性 61
    4.4.4  值类型字符串 61
    4.4.5  计算字符数量 61
    4.4.6  连接字符串和字符 62
    4.4.7  字符串插值 62
    4.4.8  比较字符串 63
    4.4.9  Unicode 63
    4.5  流程控制 65
    4.5.1  for循环(1) 66
    4.5.2  for循环(2) 67
    4.5.3  while循环 67
    4.6  条件语句 68
    4.6.1  if语句 68
    4.6.2  switch语句 69
    4.7  函数 70
    4.7.1  函数的声明与调用 70
    4.7.2  函数的参数和返回值 71
    4.8  实战演练——使用Xcode创建Swift程序 72
    第5章  Cocoa Touch框架 74
    5.1  Cocoa Touch基础 74
    5.1.1  Cocoa Touch概述 74
    5.1.2  Cocoa Touch中的框架 75
    5.1.3   Cocoa Touch的优势 75
    5.2  iPhone的技术层 76
    5.2.1  Cocoa Touch层 76
    5.2.2  多媒体层 80
    5.2.3  核心服务层 80
    5.2.4  核心OS层 81
    5.3  Cocoa Touch中的框架 82
    5.3.1  Core Animation(图形处理)框架 82
    5.3.2  Core Audio(音频处理)框架 82
    5.3.3  Core Data(数据处理)框架 83
    5.4  Cocoa中的类 84
    5.4.1  核心类 84
    5.4.2  数据类型类 86
    5.4.3  UI界面类 87
    5.5  国际化 88
    5.6  使用Xcode学习iOS框架 89
    5.6.1  使用Xcode文档 89
    5.6.2  快速帮助 90
    第6章  Xcode Interface Builder界面开发 92
    6.1  Interface Builder基础 92
    6.2  和Interface Builder密切相关的库面板 94
    6.3  Interface Builder采用的方法 95
    6.4  Interface Builder中的故事板——Storyboarding 95
    6.4.1  推出的背景 95
    6.4.2  故事板的文档大纲 96
    6.4.3  文档大纲的区域对象 98
    6.5  创建一个界面 98
    6.5.1  对象库 98
    6.5.2  将对象加入到视图中 99
    6.5.3  使用IB布局工具 100
    6.6  定制界面外观 103
    6.6.1  使用属性检查器 103
    6.6.2  设置辅助功能属性 103
    6.6.3   测试界面 104
    6.7  iOS 9控件的属性 105
    6.8  实战演练——将设计界面连接到代码 105
    6.8.1  打开项目 105
    6.8.2   输出口和操作 106
    6.8.3  创建到输出口的连接 106
    6.8.4  创建到操作的连接 108
    6.9  实战演练——纯代码实现UI设计 109
    第7章  使用Xcode编写MVC程序 112
    7.1  MVC模式基础 112
    7.1.1  分析结构 112
    7.1.2  MVC的特点 113
    7.2  Xcode中的MVC 113
    7.2.1  原理 113
    7.2.2   模板就是给予MVC的 114
    7.3  在Xcode中实现MVC 114
    7.3.1  视图 115
    7.3.2  视图控制器 115
    7.4   数据模型 116
    7.5  实战演练——使用模板Single View Application 117
    7.5.1  创建项目 117
    7.5.2  规划变量和连接 120
    7.5.3  设计界面 122
    7.5.4  创建并连接输出口和操作 123
    7.5.5  实现应用程序逻辑 126
    7.5.6  生成应用程序 127
    7.6  实战演练——创建一个MVC程序(Swift版) 127
    第二篇  核心技术篇
    第8章  文本框和文本视图 132
    8.1  文本框(UITextField) 132
    8.1.1  文本框基础 132
    8.1.2  实战演练——控制是否显示TextField中信息 132
    8.1.3  实战演练——对输入内容的长度进行验证 134
    8.1.4  实战演练——实现用户登录框界面 135
    8.1.5  实战演练——实现一个UITextField控件(Swift版) 136
    8.2  文本视图(UITextView) 137
    8.2.1  文本视图基础 137
    8.2.2  实战演练——拖动输入的文本 138
    8.2.3  实战演练——自定义设置文字的行间距 139
    8.2.4  实战演练——自定义 UITextView 控件的样式 140
    8.2.5  实战演练——在指定的区域中输入文本(Swift版) 143
    第9章  按钮和标签 145
    9.1  标签(UILabel) 145
    9.1.1  标签(UILabel)的属性 145
    9.1.2  实战演练——使用UILabel显示一段文本 145
    9.1.3  实战演练——为文字分别添加上划线、下划线和中划线 147
    9.1.4  实战演练——显示被触摸单词的字母 148
    9.1.5  实战演练——显示一个指定样式的文本(Swift版) 150
    9.2  按钮(UIButton) 151
    9.2.1  按钮基础 151
    9.2.2  实战演练——自定义设置按钮的图案 152
    9.2.3  实战演练——实现了一个变换形状动画按钮 154
    9.3  实战演练——联合使用文本框、文本视图和按钮 155
    9.3.1  创建项目 155
    9.3.2  设计界面 156
    9.3.3  创建并连接输出口和操作 161
    9.3.4  实现按钮模板 162
    9.3.5  隐藏键盘 164
    9.3.6  实现应用程序逻辑 165
    9.3.7  总结执行 166
    9.4  实战演练——自定义一个按钮(Swift版) 168
    第10章  滑块、步进和图像 170
    10.1  滑块控件(UISlider) 170
    10.1.1  使用Slider 控件的基本方法 170
    10.1.2  实战演练——使用素材图片实现滑动条特效 171
    10.1.3  实战演练——实现自动显示刻度的滑动条 172
    10.1.4   实战演练——实现各种各样的滑块 174
    10.1.5  实战演练——自定义实现UISlider控件功能(Swift版) 177
    10.2  步进控件(UIStepper) 178
    10.2.1  步进控件介绍 178
    10.2.2  实战演练——自定义步进控件的样式 179
    10.2.3  实战演练——设置指定样式的步进控件 181
    10.2.4  实战演练——使用步进控件自动增减数字(Swift版) 185
    10.3  图像视图控件(UIImageView) 186
    10.3.1  UIImageView的常用操作 186
    10.3.2  实战演练——实现图像的模糊效果 187
    10.3.3  实战演练——滚动浏览图片 190
    10.3.4  实战演练——实现一个图片浏览器 191
    10.3.5  实战演练——使用UIImageView控件(Swift版) 193
    第11章  开关控件和分段控件  195
    11.1  开关控件(UISwitch) 195
    11.1.1  开关控件基础 195
    11.1.2  实战演练——改变UISwitch的文本和颜色 195
    11.1.3  实战演练——显示具有开关状态的开关 197
    11.1.4  实战演练——联合使用UISlider与UISwitch控件 198
    11.1.5  实战演练——控制是否显示密码明文(Swift版) 199
    11.2  分段控件(UISegmentedControl) 200
    11.2.1  分段控件的属性和方法 201
    11.2.2  实战演练——使用 UISegmentedControl控件 202
    11.2.3  实战演练——添加图标和文本 203
    11.2.4  实战演练——使用分段控件控制背景颜色 204
    11.2.5  实战演练——使用UISegmentedControl控件(Swift版) 205
    第12章  Web视图控件、可滚动视图控件和翻页控件 206
    12.1  Web视图(UIWebView) 206
    12.1.1  Web视图基础 206
    12.1.2  实战演练——在UIWebView控件中调用JavaScript 脚本 207
    12.1.3  实战演练——使用滑动条动态改变字体的大小 208
    12.1.4  实战演练——实现一个迷你浏览器工具 209
    12.1.5  实战演练——使用UIWebView控件加载网页(Swift版) 211
    12.2  可滚动的视图(UIScrollView) 212
    12.2.1  UIScrollView的基本用法 213
    12.2.2  实战演练——使用可滚动视图控件 213
    12.2.3  实战演练——滑动隐藏状态栏 216
    12.2.4  实战演练——使用UIScrollView控件(Swift版) 217
    12.3  实战演练——联合使用开关、分段控件和Web视图控件 218
    12.3.1  创建项目 219
    12.3.2  设计界面 219
    12.3.3  创建并连接输出口和操作 221
    12.3.4  实现应用程序逻辑 223
    12.3.5  调试运行 225
    12.4  翻页控件(UIPageControl) 225
    12.4.1  PageControll控件基础 225
    12.4.2  实战演练——自定义 UIPageControl 控件的的外观样式 226
    12.4.3  实战演练——实现一个图片播放器 228
    12.4.4  实战演练——实现一个图片浏览程序 230
    12.4.5  实战演练——使用UIPageControl控件设置4个界面(Swift版) 230
    第13章  提醒和操作表 232
    13.1  提醒视图(UIAlertView) 232
    13.1.1  UIAlertView基础 232
    13.1.2  实战演练——实现一个自定义提醒对话框 235
    13.1.3  实战演练——实现振动提醒框效果 236
    13.1.4  实战演练——自定义UIAlertView控件的外观 239
    13.1.5  实战演练——使用UIAlertView控件(Swift版) 242
    13.2  操作表(UIActionSheet) 243
    13.2.1  操作表的基本用法 243
    13.2.2  实战演练——实现特殊样式效果的UIActionSheet 244
    13.2.3  实战演练——实现Reeder阅读器效果 248
    13.2.4  实战演练——使用UIActionSheet控件定制一个按钮面板 251
    13.2.5  实战演练——使用UIActionsheet实现一个分享App(Swift版) 251
    第14章  工具栏、日期选择器 254
    14.1  工具栏(UIToolbar) 254
    14.1.1  工具栏基础 254
    14.1.2  实战演练——联合使用UIToolBar和UIView 255
    14.1.3  实战演练——自定义UIToolBar控件的颜色和样式 256
    14.1.4  实战演练——创建一个带有图标按钮的工具栏 261
    14.1.5  使用UIToolbar制作一个网页浏览器(Swift版) 262
    14.2  选择器视图(UIPickerView) 264
    14.2.1  选择器视图基础 264
    14.2.2  实战演练——实现两个UIPickerView控件间的数据依赖 266
    14.2.3  实战演练——自定义一个选择器 268
    14.2.4  实战演练——实现一个单列选择器 275
    14.2.5  实战演练——实现一个会发音的倒计时器(Swift版) 276
    14.3  日期选择控件(UIDatePicker) 278
    14.3.1  UIDatePicker基础 278
    14.3.2  实战演练——实现一个日期选择器 280
    14.3.3  实战演练——使用日期选择器自动选择一个时间 286
    14.3.4   实战演练——使用UIDatePicker控件(Swift版) 287
    第15章  表视图 290
    15.1  表视图基础 290
    15.1.1  表视图的外观 290
    15.1.2  表单元格 290
    15.1.3  添加表视图 290
    15.1.4  UITableView详解 294
    15.2  实战演练 296
    15.2.1  实战演练——拆分表视图 296
    15.2.2  实战演练——自定义UITableViewCell 298
    15.2.3  实战演练——实现一个图文样式联系人列表效果 302
    15.2.4   实战演练——在表视图中动态操作单元格(Swift版) 304
    第16章  活动指示器、进度条和检索条 306
    16.1  活动指示器(UIActivityIndicatorView) 306
    16.1.1  活动指示器基础 306
    16.1.2  实战演练——自定义UIActivityIndicatorView控件的样式 306
    16.1.3  实战演练——自定义活动指示器的显示样式 309
    16.1.4  实战演练——实现不同外观的活动指示器效果 312
    16.1.5  实战演练——使用UIActivityIndicatorView控件(Swift版) 313
    16.2  进度条(UIProgressView) 314
    16.2.1  进度条基础 314
    16.2.2  实战演练——自定义进度条的外观样式 314
    16.2.3  实战演练——实现多个具有动态条纹背景的进度条 315
    16.2.4  实战演练——自定义一个指定外观样式的进度条 317
    16.2.5  实战演练——实现自定义进度条效果(Swift版) 321
    16.3  检索条(UISearchBar) 322
    16.3.1  检索条基础 322
    16.3.2  实战演练——在查找信息输入关键字时实现自动提示功能 323
    16.3.3  实战演练——实现文字输入的自动填充和自动提示功能 326
    16.3.4  实战演练——使用检索控件快速搜索信息 329
    16.3.5   使用UISearchBar控件 331
    第17章  UIView详解 333
    17.1  UIView基础 333
    17.1.1  UIView的结构 333
    17.1.2  视图架构 335
    17.1.3  视图层次和子视图管理 335
    17.2  实战演练——给任意UIView视图四条边框加上阴影 336
    17.3  实战演练——给UIView加上各种圆角、边框效果 338
    17.4  实战演练——使用UIView控件实现弹出式动画表单效果 343
    17.5  实战演练——创建一个滚动图片浏览器(Swift版) 344
    第18章  视图控制器 349
    18.1  导航控制器(UIViewController)简介 349
    18.1.1  UIViewController基础 349
    18.1.2  实战演练——实现可以移动切换的视图效果 350
    18.1.3  实战演练——实现手动旋转屏幕的效果 353
    18.1.4  实战演练——实现会员登录系统(Swift版) 354
    18.2  使用UINavigationController 355
    18.2.1  UINavigationController详解 356
    18.2.2  实战演练——使用导航控制器展现3个场景 358
    18.2.3  实战演练——实现一个界面导航条功能 362
    18.2.4  实战演练——创建主从关系的“主-子”视图(Swift版) 364
    18.3  选项卡栏控制器 365
    18.3.1  选项卡栏和选项卡栏项 366
    18.3.2  实战演练——使用选项卡栏控制器构建3个场景 368
    18.3.3  实战演练——使用动态单元格定制表格行 372
    18.3.4  开发一个界面选择控制器(Swift版) 373
    第三篇  技术进阶篇
    第19章  实现多场景和弹出框 376
    19.1  多场景故事板 376
    19.1.1  多场景故事板基础 376
    19.1.2  创建多场景项目 377
    19.1.3  实战演练——使用第二个视图来编辑第一个视图中的信息 380
    19.1.4  实战演练——实现多个视图之间的切换 384
    19.2  实战演练——多场景视图数据传输(Swift版) 388
    第20章  UICollectionView和UIVisual EffectView控件 391
    20.1  UICollectionView控件详解 391
    20.1.1  UICollectionView的构成 391
    20.1.2  实现一个简单的UICollectionView 392
    20.1.3  自定义的UICollectionViewLayout 394
    20.1.4  实战演练——使用UICollectionView控件实现网格效果 395
    20.1.5  实战演练——实现大小不相同的网格效果 398
    20.1.6  实战演练——实现Pinterest样式的布局效果(Swift版) 400
    20.2  UIVisualEffectView控件详解 402
    20.2.1  UIVisualEffectView基础 402
    20.2.2  使用VisualEffectView控件实现模糊特效 404
    20.2.3  使用Visual Effect View实现Vibrancy效果 404
    20.2.4  实战演练——在屏幕中实现了模糊效果 406
    20.2.5  实战演练——在屏幕中实现了模糊效果 407
    20.2.6  实战演练——编码实现指定图像的模糊效果(Swift版) 409
    第21章  iPad弹出框和分割视图控制器 411
    21.1  iPad弹出框 411
    21.1.1  创建弹出框 411
    21.1.2  创建弹出切换 411
    21.1.3  手工显示弹出框 413
    21.1.4  响应用户关闭弹出框 413
    21.1.5  以编程方式创建并显示弹出框 414
    21.1.6  实战演练——使用弹出框更新内容 416
    21.2  探索分割视图控制器 418
    21.2.1  分割视图控制器基础 418
    21.2.2  表视图实战演练 420
    第22章  界面旋转、大小和全屏处理 425
    22.1  启用界面旋转 425
    22.1.1  界面旋转基础 425
    22.1.2  实战演练——实现界面自适应(Swift版) 426
    22.2  设计可旋转和调整大小的界面 427
    22.2.1  自动旋转和自动调整大小 427
    22.2.2  调整框架 427
    22.2.3  切换视图 427
    22.2.4  实战演练——使用Interface Builder创建可旋转和调整大小的界面 427
    22.2.5  实战演练——在旋转时调整控件 430
    22.2.6  实战演练——旋转时切换视图 433
    22.2.7  实战演练——实现屏幕视图的自动切换(Swift版) 436
    第23章  图形、图像、图层和动画 437
    23.1  图形处理 437
    23.1.1  iOS的绘图机制 437
    23.1.2  实战演练——在屏幕中绘制一个三角形 438
    23.1.3  实战演练——使用CoreGraphic实现绘图操作 439
    23.1.4  使用Quartz 2D绘制移动的曲线(Swift版) 442
    23.2  图像处理 443
    23.2.1  实战演练——实现颜色选择器/调色板功能 443
    23.2.2  实战演练——在屏幕中绘制一个图像 444
    23.3  图层 446
    23.3.1  视图和图层 446
    23.3.2  实战演练——实现图片、文字以及翻转效果 447
    23.3.3  实战演练——滑动展示不同的图片 448
    23.3.4  实战演练——演示CALayers图层的用法(Swift版) 449
    23.4  实现动画 450
    23.4.1  UIImageView动画 450
    23.4.2  视图动画UIView 450
    23.4.3  Core Animation详解 454
    23.4.4  实战演练——使用图像动画 455
    23.4.5  实战演练——实现UIView分类动画效果 463
    23.4.6  实战演练——动画样式显示电量使用情况 465
    23.4.7  实战演练——图形图像的人脸检测处理(Swift版) 468
    第24章  声音服务 472
    24.1  访问声音服务 472
    24.1.1  声音服务基础 472
    24.1.2  实战演练——播放声音文件 473
    24.1.3  实战演练——使用AudioToolbox播放列表中的音乐(Swift版) 476
    24.2  提醒和振动 479
    24.2.1  播放提醒音 480
    24.2.2  实战演练——实用iOS的提醒功能 480
    24.2.3  实战演练——实现两种类型的振动效果(Swift版) 488
    第25章  多媒体应用 490
    25.1  Media Player框架 490
    25.1.1  Media Player框架中的类 490
    25.1.2  实战演练——使用Media Player播放视频 491
    25.1.3  实战演练——边下载边播放视频 493
    25.1.4  实战演练——播放指定的视频(Swift版) 495
    25.2  AV Foundation框架 497
    25.2.1  准备工作 497
    25.2.2  使用AV音频播放器 497
    25.2.3  实战演练——使用AV Foundation框架播放视频 498
    25.2.4  实战演练——使用AVAudioPlayer播放和暂停指定的MP3(Swift版) 501
    25.3  图像选择器(UIImagePickerController) 501
    25.3.1  使用图像选择器 501
    25.3.2  实战演练——获取图片并缩放 502
    25.3.3  实战演练——通过弹出式菜单选择相机中的照片(Swift版) 506
    25.4  实战演练——实现一个多媒体的应用程序 507
    25.4.1  实现概述 507
    25.4.2  创建项目 508
    25.4.3  设计界面 509
    25.4.4  创建并连接输出口和操作 509
    25.4.5  实现电影播放器 510
    25.4.6  实现音频录制和播放 511
    25.4.7  使用照片库和相机 514
    25.4.8  实现Core Image滤镜 515
    25.4.9  访问并播放音乐库 516
    第26章  定位处理 520
    26.1  Core Location框架 520
    26.1.1  Core Location基础 520
    26.1.2  使用流程 520
    26.1.3  实战演练——定位显示当前的位置信息(Swift版) 523
    26.2  获取位置 526
    26.2.1  位置管理器委托 526
    26.2.2  获取航向 527
    26.3  地图功能 528
    26.3.1  Map Kit基础 528
    26.3.2  为地图添加标注 529
    26.3.3  实战演练——在地图中定位当前的位置信息(Swift版) 530
    26.4  实战演练——创建一个支持定位的应用程序 531
    26.4.1  创建项目 531
    26.4.2  设计视图 532
    26.4.3  创建并连接输出口 533
    26.4.4  实现应用程序逻辑 533
    26.4.5  生成应用程序 535
    26.5  实战演练——定位当前的位置信息 535
    26.6  实战演练——在地图中绘制导航线路 538
    第27章  读写应用程序数据 541
    27.1  iOS应用程序和数据存储 541
    27.2  用户默认设置 542
    27.3  设置束 542
    27.3.1  设置束基础 543
    27.3.2  实战演练——通过隐式首选项实现一个手电筒程序 544
    27.4  直接访问文件系统 547
    27.4.1  应用程序数据的存储位置 547
    27.4.2  获取文件路径 548
    27.4.3  读写数据 548
    27.4.4  读取和写入文件 549
    27.4.5  通过plist文件存取文件 550
    27.4.6  保存和读取文件 552
    27.4.7  文件共享和文件类型 552
    27.4.8  实战演练——实现一个用户信息收集器 553
    27.5  iCloud存储 557
    27.6  使用SQLite3存储和读取数据 557
    27.7  核心数据 561
    27.7.1  Core Data基础 561
    27.7.2  实战演练——使用CoreData 动态添加、删除数据 562
    27.8  互联网数据 567
    27.8.1  XML和JSON 567
    27.8.2  实战演练——使用JSON获取网站中的照片信息 570
    第四篇  技术提高篇
    第28章  触摸、手势识别和Force Touch  574
    28.1  多点触摸和手势识别基础 574
    28.2  触摸处理 575
    28.2.1  触摸事件和视图 575
    28.2.2  iOS中的手势操作 577
    28.2.3  实战演练——触摸的方式移动视图 578
    28.2.4  实战演练——触摸挪动彩色方块(Swift版) 578
    28.3  手势处理 582
    28.3.1  手势处理基础 582
    28.3.2  实战演练——实现一个手势识别器 586
    28.3.3  实战演练——识别手势并移动屏幕中的方块(Swift版) 591
    28.4  Force Touch技术 594
    28.4.1  Force Touch介绍 595
    28.4.2  Force Touch APIs介绍 595
    28.4.3  实战演练——使用Force Touch 596
    28.4.4  实战演练——启动Force Touch触控面板 598
    第29章  和硬件之间的操作 600
    29.1  加速计和陀螺仪 600
    29.1.1  加速计基础 600
    29.1.2  陀螺仪 604
    29.1.3  实战演练——检测倾斜和旋转 604
    29.1.4  实战演练——使用Motion传感器(Swift版) 608
    29.2  访问朝向和运动数据 609
    29.2.1  两种方法 610
    29.2.2  实战演练——检测当前设备的朝向 611
    29.3 实战演练——传感器综合练习(Swift版) 613
    第30章  地址簿、邮件和Twitter  622
    30.1  地址簿 622
    30.1.1  框架Address Book UI 622
    30.1.2  框架Address Book 623
    30.2  Message UI电子邮件 624
    30.2.1  Message UI基础 624
    30.2.2  实战演练——使用Message UI发送邮件(Swift版) 625
    30.3  使用Twitter发送推特信息 626
    30.3.1  Twitter基础 626
    30.3.2  实战演练——开发一个Twitter客户端(Swift版) 626
    30.4  实战演练——联合使用地址簿、电子邮件、Twitter和地图 629
    30.4.1  创建项目 630
    30.4.2  设计界面 630
    30.4.3  创建并连接输出口和操作 631
    30.4.4  实现地址簿逻辑 631
    30.4.5  实现地图逻辑 633
    30.4.6  实现电子邮件逻辑 635
    30.4.7  实现Twitter逻辑 636
    30.4.8  调试运行 636
    第31章  开发通用的项目程序 637
    31.1  开发通用应用程序 637
    31.1.1  在iOS 6中开发通用应用程序 637
    31.1.2  在iOS 6+中开发通用应用程序 638
    31.1.3  图标文件 645
    31.1.4  启动图像 646
    31.2  实战演练——使用通用程序模板创建通用应用程序 646
    31.2.1  创建项目 646
    31.2.2  设计界面 646
    31.2.3  创建并连接输出口 647
    31.2.4  实现应用程序逻辑 647
    31.3  实战演练——使用视图控制器 648
    31.3.1  创建项目 648
    31.3.2  设计界面 649
    31.3.3  创建并连接输出口 650
    31.3.4  实现应用程序逻辑 650
    31.3.5  生成应用程序 650
    31.4  实战演练——使用多个目标 651
    31.4.1  将iPhone目标转换为iPad目标 651
    31.4.2  将iPad目标转换为iPhone目标 651
    31.5  实战演练——创建基于“主—从”视图的应用程序 652
    31.5.1  创建项目 652
    31.5.2  调整iPad界面 653
    31.5.3  调整iPhone界面 654
    31.5.4  实现应用程序数据源 655
    31.5.5  实现主视图控制器 657
    31.5.6  实现细节视图控制器 658
    31.5.7  调试运行 659
    第32章  推服务和多线程 660
    32.1  推服务 660
    32.1.1  推服务介绍 660
    32.1.2  推服务的机制 661
    32.2  多线程 661
    32.2.1  多线程基础 661
    32.2.2  iOS中的多线程 663
    32.2.3  线程的同步与锁 667
    32.2.4  线程的交互 668
    32.3  ARC机制 669
    32.3.1  ARC概述 669
    32.3.2  ARC中的新规则 670
    第33章  Touch ID详解 671
    33.1  开发Touch ID应用程序 671
    33.1.1  Touch ID的官方资料 671
    33.1.2  开发Touch ID应用程序的步骤 672
    33.2  实战演练——使用Touch ID认证 673
    33.3  实战演练——使用Touch ID密码和指纹认证 674
    33.4  实战演练——Touch ID认证的综合演练 678
    第34章  游戏开发 684
    34.1  Sprite Kit框架基础 684
    34.1.1  Sprite Kit的优点和缺点 684
    34.1.2  Sprite Kit、Cocos2D、Cocos2D-X和Unity的选择 684
    34.2  实战演练——开发一个Sprite Kit游戏程序 685
    34.3  实战演练——开发一个四子棋游戏(Swift版) 693
    第35章  watchOS 2智能手表开发 704
    35.1  Apple Watch介绍 704
    35.2  WatchKit开发详解 705
    35.2.1  搭建WatchKit开发环境 706
    35.2.2  WatchKit架构 706
    35.2.3  WatchKit布局 708
    35.2.4  Glances和Notifications 708
    35.2.5  Watch App的生命周期 708
    35.3  开发Apple Watch应用程序 709
    35.3.1  创建Watch应用 710
    35.3.2  创建Glance界面 710
    35.3.3  自定义通知界面 710
    35.3.4  配置Xcode项目 710
    35.4  实战演练——实现AppleWatch界面布局 713
    35.5  实战演练——演示AppleWatch的日历事件 715
    35.6  实战演练——在手表中控制小球的移动 719
    35.7  实战演练——实现一个Watch录音程序 720
    第36章  HomeKit智能家居应用开发 730
    36.1  HomeKit基础 730
    36.1.1  苹果HomeKit如何牵动全国智能硬件格局 730
    36.1.2  给开发者和厂家提供的巨大机会 731
    36.1.3  苹果正式推出HomeKit硬件标准 731
    36.2  HomeKit开发基础 732
    36.2.1  HomeKit应用程序的层次模型 732
    36.2.2  HomeKit程序架构模式 733
    36.2.3  HomeKit中的类 734
    36.3  实战演练——实现一个HomeKit控制程序 735
    36.4  实战演练——WatchKit+HomeKit实现一个智能家居控制程序(Swift版) 739
    第37章  HealthKit健康应用开发 748
    37.1  HealthKit基础 748
    37.1.1  Healthkit介绍 748
    37.1.2  市面中的Healthkit应用现状 748
    37.1.3  接入Healthkit的好处 749
    37.2  HealthKit开发基础 750
    37.2.1  开发要求 750
    37.2.2  HealthKit开发思路 750
    37.3  实战演练——检测一天消耗掉的能量 751
    37.4  实战演练——心率检测(Swift版) 760
    第五篇  综合实战篇
    第38章  分析开源中国客户端 764
    38.1  系统介绍 764
    38.2  系统主界面 765
    38.3  多线程处理 767
    第39章  综合性智能手表管理系统(Swift版) 771
    39.1  系统介绍 771
    39.2  创建工程项目 771
    39.3  iPhone端的具体实现 772
    39.4  Watch端的具体实现 774
    39.4.1  主界面视图 774
    39.4.2  各个子界面视图的具体实现 776
查看详情
12
相关图书 / 更多
iOS 9 开发指南
iOS黑客攻防秘籍 第2版
陈德
iOS 9 开发指南
iOS编程(第6版)
[美]Aaron Hillegass 著;王凤全 译;[美]Christian Keur
iOS 9 开发指南
iOS开发基础教程(Swift版)(第2版)
陈志峰;田英;翟高粤
iOS 9 开发指南
iOS开发案例教程(swift版)
孙志敏 田英
iOS 9 开发指南
iOS应用开发教程(微课视频版)
罗良夫
iOS 9 开发指南
iOS全埋点解决方案
王灼洲 著
iOS 9 开发指南
iOS 14开发指南
管蕾
iOS 9 开发指南
iOS应用逆向与安全之道
罗巍 著
iOS 9 开发指南
iOS项目开发实战(高等职业教育移动互联应用技术专业教材)
赵善龙 、刘俊驰 主编
iOS 9 开发指南
iOS开发基础入门与实战
张运生 著;郭敏强、蔡铁、郭敏强、蔡铁、张运生 编
iOS 9 开发指南
iOS面试一战到底
张益珲 著
iOS 9 开发指南
iOS程序员面试笔试真题库
蒋信厚 汪小发 楚秦
您可能感兴趣 / 更多
iOS 9 开发指南
iOS 11 开发指南
管蕾 著
iOS 9 开发指南
iOS项目开发全程实录
管蕾 著
iOS 9 开发指南
iOS 10 开发指南
管蕾 著
iOS 9 开发指南
Android应用开发学习手册
管蕾 著
iOS 9 开发指南
iOS 8开发指南(第2版)
管蕾 著
iOS 9 开发指南
iOS 8开发指南
管蕾 著