目录
第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