第1天 Mac OS和iPhone SDK简介 1
1.1iPhone SDK 4和Xcode的使用与安装 2
1.2 Xcode使用简介 3
1.2.1创建iPhone OS项目 4
1.2.2项目程序模板简介 5
1.2.3项目开发界面 6
1.2.4项目工具栏简介 7
1.2.5显示开发代码行数 9
1.2.6以_Prefix.pch为后缀的文件对象 9
1.2.7 main.m入口衔接程序文件 10
1.3 Interface Builder使用简介 11
1.3.1关于Nib和Xib文件 11
1.3.2图形开发环境概述 12
1.4 Simulator使用简介 15
1.4.1在iPhone SDK 4环境下运行SDK 2或SDK 3的应用程序 16
1.5小结和练习 17
第2天 第一个程序“Hello World” 19
2.1 View-based Application的初次应用 19
2.2 AppDelegate class文件简介 21
2.2.1 UIKit框架的作用 22
2.2.2 AppDelegate.h 23
2.2.3 AppDelegate.m 24
2.3视图控制器文件 26
2.3.1 ViewController.h 26
2.3.2 ViewController.m 27
2.3.3对象属性中的nonatomic和retain 28
2.4 ViewController.xib文件引导Interface Builder 29
2.4.1设置视图界面的背景颜色 30
2.4.2添加Label到视图中 30
2.5程序的运行和保存 33
2.6添加iPhone应用程序图标 33
2.7小结和练习 36
第3天 打开网站URL连接 37
3.1 View-based Application的网页连接项目 37
3.1.1构建按钮方法打开URL数据 38
3.1.2文字格式的转换NSStringstringWithFonnat 39
3.1.3网站连接的内容NSURL 39
3.1.4打开网站的连接UIApplicationsharedApplication 40
3.1.5Foundation框架的作用 40
3.2建立按钮操作方法视图控制器 42
3.3使用Interface Builder构建按钮控件 43
3.3.1按钮Round Rect Button特性的文字输入 45
3.3.2按钮Round Rect Button的大小和位置设置 46
3.3.3按钮Round Rect Button的连接设置 46
3.4小结和练习 47
第4天 设置文件SettingBundle 49
4.1在View-based Application中的自定义设置 50
4.1.1把Setting Bundle加入程序 50
4.1.2Root.plist文件的内容添加 51
4.1.3使用NSUserDefaults获取自定义数据 53
4.2获取自定义设置数据视图控制器 54
4.2.1建立UILabel对象 54
4.2.2定义UILabel对象的属性值 55
4.3使用Interface Builder构建标签控件 57
4.3.1标签Label大小和位置的设置 57
4.3.2标签Label的文字显示特性设置 58
4.3.3标签Label与File's Owner的连接 60
4.3.4虚拟iPhone系统的Simulator设置 61
4.4小结和练习 62
第5天 文字的长度 65
5.1 View-based Application的控件交互项目 65
5.1.1控件属性值中的变量 66
5.1.2条件假定语句if和else 67
5.2统计文字长度的视图控制器 67
5.2.1建立UITextField、 UILabel对象和IBAction 67
5.2.2定义交互控件属性值的按钮操作方法 68
5.3使用Interface Builder构建交互控件 70
5.3.1添加交互控件和特性设置 70
5.3.2交互控件的大小和位置设置 73
5.3.3交互控件与File's Owner的连接 74
5.4小结和练习 77
第6天 移动网站导航 79
6.1 View-based Application的打开网站项目 79
6.1.1向网站发送一个指定内容要求NSURLRequest 80
6.1.2字符串的格式转换NSASCIIStringEncoding 81
6.2显示网站内容的交互方法 81
6.2.1建立UIWebView对象和IBAction方法 81
6.2.2定义UIWebView对象属性值的IBAction的操作方法 82
6.3使用Interface Builder构建显示网站内容 83
6.3.1添加导航控件和特性设置 83
6.3.2导航控件的大小和位置设置 86
6.3.3导航控件的连接设置 87
6.4小结和练习 89
第7天 长度单位换算器 91
7.1 View-based Application的文本框交互项目 91
7.1.1捕获屏幕触摸事件UIView(touch) 92
7.2单位换算的交互方法 93
7.2.1建立多个UITextField对象和IBAction方法 93
7.2.2定义交互UITextField对象属性值的操作方法 94
7.3使用Interface Builder构建换算器控件 97
7.3.1添加换算器控件和特性设置 97
7.3.2换算器控件的大小和位置设置 101
7.3.3换算器控件的连接设置 105
7.4小结和练习 109
第8天 分歧解决器 111
8.1 View-based Application的事件数值交互项目 111
8.1.1条件语句switch与case 112
8.2算法机率交互方法 113
8.2.1建立UILabel和多个IBAction方法 113
8.2.2定义交互Label的属性值的操作方法 114
8.3在Interface Builder中构建分歧解决器控件 118
8.3.1添加分歧解决器控件和特性设置 118
8.3.2分歧解决器控件的大小和位置设置 122
8.3.3分歧解决器控件的连接设置 125
8.4小结和练习 129
第9天 密码生成器 131
9.1 View-based Application的开关交互项目 131
9.1.1宏定义#define 132
9.1.2随机数random和srandom 132
9.1.3逻辑对象BOOL 133
9.1.4循环语句for loop 133
9.1.5字符串中字符的位置NSRange 133
9.1.6整数数据类型定义NSInteger 133
9.1.7字符串的范围NSString StingWithRange 134
9.2随机数交互方法 134
9.2.1建立UISwitch、UITextField对象和IBAction方法 134
9.2.2定义交互Switch与TextField属性值的操作方法 135
9.3在Interface Builder中构建密码生成器控件 139
9.3.1添加密码生成器控件和特性设置 139
9.3.2密码生成器控件的大小和位置设置 145
9.3.3密码生成器控件的连接设置 151
9.4小结和练习 156
第10天 迷你秒表 157
10.1 View-based Application的时间变量交互项目 157
10.1.1定时器NSTimer 158
10.2时间变量视图控制器 159
10.2.1建立NSTimer、 UILabel对象和IBAction方法 159
10.2.2定义交互NSTimer与UILabel属性值的操作方法 160
10.3在Interface Builder中构建秒计时控件 162
10.3.1添加秒计时控件和特性设置 162
10.3.2秒计时控件的大小和位置设置 166
10.3.3秒计时控件的连接设置 168
10.4小结和练习 171
第11天 点数器 173
11.1 View-based Application的算术方法项目 173
11.1.1条件语句if结合运算 174
11.2算术的视图控制器 175
11.2.1建立NSInteger、 UILabel对象和IBAction方法 175
11.2.2定义NSInteger与UILabel属性值的操作方法 176
11.3在Interface Builder中构建点数控件 178
11.3.1添加点数控件和特性设置 179
11.3.2点数控件的大小和位置设置 182
11.3.3点数控件的连接设置 185
11.4小结和练习 188
第12天 考反应扑克游戏 189
12.1 View-based Application的提示框交互项目 190
12.1.1提示框UIAlertView的使用 190
12.1.2保存时间值NSDate 191
12.1.3在游戏中添加图像文件 191
12.2时间差视图控制器 193
12.2.1建立NSData、 UIImageView对象和IBAction方法 193
12.2.2定义UIAlertView和游戏控件属性值的操作方法 194
12.3在Interface Builder中构建扑克游戏控件 198
12.3.1扑克游戏控件的添加 199
12.3.2游戏背景视图的检查器设置 200
12.3.3游戏扑克图像的检查器设置 202
12.3.4游戏透明按钮的检查器设置 203
12.4小结和练习 205
第13天 页面控制 207
13.1 View-based Application的页面控制项目 207
13.1.1添加显示在页面中的图像文件 208
13.1.2视图的实例方法addSubview和removeFromSuperview 209
13.2多页面视图控制器 210
13.2.1建立UIPageControl方法 210
13.2.2定义changePage视图操作方法 211
13.3在Interface Builder中构建子视图控件 213
13.3.1视图控件的添加 214
13.3.2视图控件的检查器设置 216
13.4小结和练习 224
第14天 图片浏览器 225
14.1 View-based Application的滚动视图控制项目 225
14.1.1常量定义const 226
14.1.2数组数据类型定义NSArray 227
14.1.3添加浏览器中的图像文件 227
14.2滚动视图的视图控制器 228
14.2.1建立UIScrollView对象 228
14.2.2滚动视图的布局方法 229
14.3在Interface Builder中构建滚动视图控件 233
14.3.1添加滚动视图控件和特性设置 233
14.3.2滚动视图控件的大小和位置设置 235
14.3.3滚动视图控件的连接设置 237
14.4小结和练习 239
第15天 小型表格 241
15.1 Navigation-based Application的初次应用 241
15.1.1可修改式数组NSMutableArray 242
15.2在InterfaceBuilder中为表格显示分组 243
15.3 RootViewController class文件 244
15.3.1 UITableView的分组数量设置 244
15.3.2 UITableView的分组标题内容设置 245
15.3.3 UITableView的行数设置 247
15.3.4 UITableView的每行内容设置 248
15.3.5表格视图的UIBarButtonItem添加标题和编辑按钮 249
15.3.6在表格视图的导航栏按钮中添加提示框 251
15.4自定义表格应用程序 253
15.4.1自定义RootViewController.h文件 253
15.4.2自定义RootViewController.m文件 253
15.5小结和练习 260
第16天 地址收藏器 261
16.1 Navigation-based Application的表格连接管理项目 261
16.1.1添加UIViewController类 262
16.1.2 UITableView的表格单元触发页面视图 264
16.2网址连接视图控制器 265
16.2.1自定义RootViewController.h文件 265
16.2.2自定义 RootViewController.m文件 265
16.2.3自定义DetailViewController.h文件 270
16.2.4自定义DetailViewController.m文件 271
16.3在Interface Builder中构建连接网址视图控件 272
16.3.1添加网址视图控件和特性设置 272
16.3.2网址视图控件的大小和位置设置 273
16.3.3网址视图控件的连接设置 274
16.4小结和练习 275
第17天 掌上老虎机 277
17.1 View-based Application的选择器游戏项目 277
17.1.1添加选择器中项目的图像文件 278
17.1.2 UIPickerView的组成 279
17.2老虎机的视图控制器 280
17.2.1建立UIPickerView、 UI Label、NSArray对象和IBAction方法 280
17.2.2定义老虎机控件属性值的操作方法 282
17.3在Interface Builder中构建老虎机游戏 287
17.3.1添加老虎机游戏的控件和特性设置 287
17.3.2老虎机游戏的控件大小和位置设置 291
17.3.3老虎机游戏的控件连接设置 293
17.4小结和练习 296
第18天 音乐播放器 297
18.1 View-based Application的声音播放项目 297
18.1.1添加播放器的背景图像和声音文件 298
18.1.2添加支持播放声音的框架 299
18.1.3 AVFoundation框架的作用 300
18.2音乐播放器的视图控制器 301
18.2.1建立AVAudioPlayer对象、播放和停止动态 301
18.2.2定义播放器属性值的操作方法 302
18.3在Interface Builder中构建音乐播放器 303
18.3.1添加音乐播放器的控件和特性设置 304
18.3.2音乐播放器的控件大小和位置设置 308
18.3.3音乐播放器的控件连接设置 310
18.4小结和练习 312
第19天 便携式电子琴 313
19.1 View-based Application的音频工具项目 313
19.1.1屏幕横向显示程序的设置 314
19.1.2添加电子琴的背景图像和声音文件 316
19.1.3添加音频工具框架 317
19.1.4 Audio Toolbox框架的作用 318
19.2电子琴的交互方法 319
19.2.1建立音频文件播放方法和播放动态 319
19.2.2定义琴键属性值的操作方法 320
19.3在Interface Builder中构建电子琴 325
19.3.1电子琴视图的背景色设置 325
19.3.2横向显示Interface Builder 326
19.3.3在Interface Builder中添加控件 326
19.3.4电子琴背景图的检查器设置 328
19.3.5电子琴键的检查器设置 329
19.4小结和练习 337
第20天 DJ混音器 339
20.1 View-based Application中设置混音器项目 339
20.1.1添加混音器的背景图像和声音文件 340
20.1.2添加支持混音器播放声音的框架 341
20.2混音器的交互方法 342
20.2.1建立UISlider、 UISwitch、AVAudioPlayer对象和交互方法 342
20.2.2定义UISlider和UISwitch与声音播放器的交互 344
20.3在Interface Builder内构建交互控件 348
20.3.1添加混音器的控件和特性设置 348
20.3.2混音器的控件大小和位置设置 353
20.3.3混音器的控件连接设置 358
20.4小结和练习 363
第21天 音乐选播器 365
21.1 View-based Application的音乐列表播放项目 366
21.1.1添加音乐列表播放的背景图像和声音文件 366
21.1.2添加支持音乐列表播放的框架 368
21.2音乐列表播放的视图控制器 368
21.2.1建立UIPicker View、UIProgress View与声音播放器 368
21.2.2定义音乐列表播放的对象和操作方法 371
21.3在Interface Builder中构建音乐播放列表 375
21.3.1添加音乐播放列表的控件和特性设置 376
21.3.2音乐列表播放的控件大小和位置设置 380
21.3.3音乐列表播放的控件连接设置 385
21.4小结和练习 391
第22天 多媒体切换器 393
22.1 Tab Bar Application的应用 394
22.1.1删除UIViewController类文件 394
22.1.2添加多媒体切换器的背景图像和声音文件 395
22.1.3添加支持多媒体切换器的框架 396
22.1.4 MediaPlayer框架的作用 397
22.1.5添加Tab页面控制器类 398
22.2多媒体切换器的交互方法 400
22.2.1构建URLView控制器 400
22.2.2构建AudioView控制器 402
22.2.3构建MovieView控制器 405
22.3在Interface Builder中构建Tab视图 407
22.3.1连接Tab页面控制器类 407
22.3.2添加URL View页面的控件和检查器设置 411
22.3.3添加AudioView页面的控件和检查器设置 414
22.3.4添加MovieView页面的控件和检查器设置 417
22.4小结和练习 418
第23天 移动的方块 419
23.1 Windows-bed Application的应用 419
23.1.1添加UIViewController类 420
23.1.2添加支持移动的方块的框架 422
23.1.3 QuartzCore框架的作用 422
23.1.4使用CGRect自定义UIWindow 423
23.1.5使用CATransaction自定义控件的动态 423
23.2自定义AppDelegate文件 425
23.3实现图像的交互方法 427
23.4小结和练习 430
第24天 璀璨的烟花 431
24.1 UtilityApplication的初次应用 431
24.1.1添加烟花图像文件 432
24.1.2添加支持关键帧动画的框架 433
24.1.3关键帧动画 434
24.2 FlipsideView简介 435
24.2.1 FlipsideViewController.h 435
24.2.2 FlipsideViewController.m 436
24.3在MainView中构建烟花动画 437
24.4在Interface Builder中构建FlipsideView 440
24.5小结和练习 443
第25天 无尽的雪花 445
25.1 Utility Application的随机图像动画 445
25.1.1添加雪花图像文件 446
25.1.2添加支持几何图形动画的框架 447
25.1.3几何图形的生成 448
25.2雪花几何图形的生成 449
25.2.1建立UIImageView对象 449
25.2.2定义图像的属性值交互onTimer方法 450
25.3在Interface Builder中构建雪花简介副页 453
25.4小结和练习 455
第26天 跳跃的皮球 457
26.1在UtilityApplication的跳跃皮球项目 457
26.1.1添加皮球图像文件 458
26.1.2添加支持跳跃动画的框架 459
26.2跳跃动画的主视图控制器 460
26.2.1建立UIImageView和CGPoint对象 460
26.2.2定义图像的属性值交互onTimer和轨迹动画方法 461
26.3在Interface Builder中构建皮球图像主页 465
26.4在Interface Builder中构建FlipsideView 468
26.5小结和练习 471
第27天 十字方向键 473
27.1 Utility Application的图像移动按钮项目 473
27.1.1添加吃豆人的移动图像和声音文件 474
27.1.2添加支持吃豆人动画和声音文件的框架 475
27.2移动图像操作的视图控制器 476
27.2.1建立UIImageView、按钮方向操作和音频播放方法 476
27.2.2定义图像属性值和方向操作交互 478
27.3在Interface Builder中构建吃豆人主页 483
27.3.1构建吃豆人图像和背景图像 483
27.3.2构建吃豆人移动按钮 488
27.4在Interface Builder中构建吃豆人简介副页 495
27.5小结和练习 498
第28天 触屏移动 499
28.1 UtiliyutyApplication的图像触屏移动项目 499
28.1.1添加飞行物体的图像和声音文件 500
28.1.2添加框架文件 501
28.1.3捕获屏幕触摸点的位置坐标 502
28.2触屏移动操作的视图控制器 503
28.2.1建立UIImageView、 CGPoint、触屏移动操作和音频播放方法 503
28.2.2定义图像属性值和触屏移动操作交互 504
28.3在Interface Builder中构建MainView 507
28.3.1构建UFO图像 507
28.4在Interface Builder中构建UFO简介副页 511
28.5小结和练习 513
第29天 跳跃动作 515
29.1 UtilityApplication的游戏人物跳跃动作项目 515
29.1.1添加游戏人物的图像和动作声音文件 516
29.1.2添加支持游戏人物动画和声音文件的框架 517
29.1.3设置显示横屏游戏 518
29.2游戏人物跳跃动作的视图控制器 520
29.2.1建立UIImageView跳跃按钮操作和音频播放方法 520
29.2.2定义图像属性值和跳跃操作交互 522
29.3在Interface Builder中构建跳跃动作 主页 525
29.3.1构建游戏人物和背景图像 526
29.3.2构建游戏人物跳跃按钮 530
29.4在Interface Builder中构建游戏简介副页 532
29.5小结和练习 534
第30天 打砖块游戏 535
30.1 Utility Application的打砖块游戏 536
30.1.1添加打砖块的图像和声音文件 536
30.1.2添加框架文件 537
30.1.3添加UIImageView控制器 538
30.1.4自定义UIImageView视图检查器 540
30.2打砖块的MainViewController交互方法 542
30.2.1建立游戏分数控件、操作交互和音频播放方法 542
30.2.2定义游戏的操作和属性值 544
30.3在Interface Builder内构建BoardView 560
30.3.1添加NSObject 560
30.3.2 NSObject的身份设置 560
30.4在Interface Builder中构建打砖块游戏主页 561
30.5在Interface Builder中构建打砖块简介副页 574
30.6小结和再会 576