第1章 iOS简介与环境搭建 1
1.1 初识iOS 1
1.1.1 iOS的发展历程 1
1.1.2 iOS的功能特性 2
1.1.3 iOS 8的新特性 3
1.2 搭建iOS开发环境 4
1.3 开发第一个iOS应用程序 4
1.3.1 Xcode工作区窗口 4
1.3.2 新建Xcode项目 6
1.3.3 运行应用程序 9
1.4 iOS应用程序结构分析 10
本章小结 11
习题1 11
第2章 Objective-C基础 12
2.1 Objective-C基本数据类型和表达式 12
2.1.1 标识符、变量和常量 12
2.1.2 局部变量和实例变量 15
2.1.3 基本数据类型 17
2.3 循环与选择结构 22
2.4 数组和字典 25
2.4.1 数组(NSArray) 25
2.4.2 字典(NSDictionary) 29
本章小结 31
习题2 31
第3章 Objective-C面向对象方法实现 32
3.1 对象、类、方法介绍 32
3.2 继承 36
3.2.1 @property属性和点语法 36
3.2.2 类的继承 38
3.3 多态、动态类型和动态绑定 40
3.3.1 多态 40
3.3.2 动态类型 42
3.3.3 动态绑定 43
3.4 对象的复制 45
3.4.1 系统类的复制 45
3.4.2 深拷贝和浅拷贝 47
3.5 iOS中的内存管理 48
3.5.1 内存管理基础知识 48
3.5.2 引用计数 49
3.5.3 自动释放池和ARC 52
本章小结 55
习题3 55
第4章 iOS开发常用设计模式 56
4.1 协议代理设计模式 56
4.2 通知与KVO机制 61
4.2.1 通知(NSNotification) 61
4.2.2 KVO 62
4.3 MVC模式 63
本章小结 64
习题4 64
第5章 iOS基础界面编程 65
5.1 UIWindow和UIView 65
5.1.1 窗口和视图 68
5.1.2 iOS坐标系统 70
5.1.3 视图的层次关系及常用属性 72
5.1.4 UIView中的layer属性 78
5.1.5 内容模式属性(ContentMode) 81
5.2 常用UIView控件的使用 83
5.2.1 UILabel 83
5.2.2 UIControl 86
5.2.3 UISlider 96
5.2.4 UISegmentedControl和UIPageControl 98
5.2.5 UIActivityIndicatorView 103
5.3 UIAlertView和UIActionSheet 105
本章小结 108
习题5 108
第6章 iOS高级界面编程 109
6.1 UIImageView图片控件 109
6.2 UITableView表视图控件 112
6.2.1 UITableView的创建 113
6.2.2 UITableView相关属性的使用 120
6.2.3 表视图的编辑模式 128
本章小结 135
习题6 135
第7章 iOS视图控制器的使用 136
7.1 UIViewController视图控制器 136
7.1.1 视图控制器基本概念 137
7.1.2 视图控制器的创建 137
7.1.3 视图控制器的生命周期 140
7.1.4 模态视图 143
7.1.5 模态视图设计方法 146
7.2 UINavigationController导航控制器 147
7.2.1 导航控制器介绍 148
7.2.2 导航控制器的创建及方法属性的使用 149
7.2.3 导航控制器实现视图之间的切换 158
7.2.4 UIImagePickerController的使用 163
7.3 UITabBarController分栏控制器 166
7.3.1 UITabBarController的创建 167
7.3.2 UITabBarController的常用属性 170
7.3.3 UITabBarController和UINavigationController的集成 174
7.3.4 自定义TabBar 176
7.4 视图间数据传递方式 181
7.4.1 导航控制器属性传值方法 181
7.4.2 协议传值方法 184
7.4.3 通知传值方法 186
7.4.4 NSUserDefaults传值方法 188
本章小结 189
习题7 189
第8章 图形与图像处理 190
8.1 简单图片浏览动画实现 190
8.2 自定义绘图(Quartz 2D) 192
8.2.1 绘制线条 193
8.2.2 绘制矩形 195
8.2.3 绘制圆形 197
8.3 iOS动画 198
8.3.1 UIView动画效果的实现 198
8.3.2 CATransition动画效果的实现 202
本章小结 209
习题8 210
第9章 iOS中的数据存储 211
9.1 数据存储的基本方式 211
9.1.1 数据存储基本方式介绍 211
9.1.2 属性列表 211
9.2 沙盒(SandBox)和归档(Archive) 214
9.2.1 沙盒机制 214
9.2.2 归档 215
9.3 SQLite数据库 219
9.3.1 创建数据库表 220
9.3.2 插入数据 221
9.3.3 查询数据 223
9.4 获取网络资源 226
9.4.1 NSData方法 226
9.4.2 NSURLRequest方法 227
9.4.3 ASIHttpRequest方法 229
本章小结 230
习题9 230
第10章 iOS网络编程 231
10.1 HTTP概述 231
10.2 HTTP常用方法与使用 232
10.2.1 同步GET方法 232
10.2.2 异步GET方法 234
10.2.3 同步POST方法 235
10.2.4 异步POST方法 235
10.3 服务器返回数据JSon解析 236
10.3.1 JSon解析格式简介 236
10.3.2 JSon解析方法介绍 237
10.4 UIWebView与HTTP综合使用 240
本章小结 244
习题10 244
第11章 AVFoundation的使用 245
11.1 AVFoundation介绍 245
11.2 视频与音频播放的方式 245
11.2.1 视频播放 245
11.2.2 音频播放 248
11.3 音乐播放器 248
11.3.1 基本界面的搭建 248
11.3.2 音乐播放功能实现 252
11.3.3 音乐播放相关信息显示 256
本章小结 259
习题11 259
第12章 GPS位置服务与地图编程 260
12.1 GPS位置服务编程 260
12.2 MKMapView编程 263
12.3 MKAnnotation标注的使用 266
本章小结 269
习题12 269
第13章 综合编程案例 270
13.1 创建推荐学校模块实例并进行界面布局 271
13.2 省份选择功能实现 275
13.3 网络接口读取 279
13.4 显示推荐结果 280
本章小结 282
习题13 283
参考文献 284