第1章 开启AIR之门 1
1.1 RIA与AIR 1
1.1.1 RIA简介 1
1.1.2 AIR简介 3
1.1.3 AIR的安全性 4
1.2 AIR 3. 5
1.2.1 AIR 3简介 5
1.2.2系统要求 6
1.2.3获取AIR 7
1.2.4安装AIR程序 8
1.3搭建AIR开发环境 8
1.3.1安装Flex SDK 9
1.3.2安装Flash Builder 4 10
1.4创建第一个AIR程序 11
1.4.1使用Flash Builder 4创建 11
1.4.2使用命令行工具创建 15
1.5 AIR程序的结构 18
1.5.1目录结构 18
1.5.2配置文件 18
第2章 ActionScript编程基础 21
2.1 ActionScript简介 21
2.1.1 ActionScript 3.0概述 21
2.1.2 ActionScript 3.0语法特点 22
2.1.3关键字 23
2.2变量和常量 24
2.2.1声明和使用变量 24
2.2.2变量作用范围 26
2.2.3变量默认值 28
2.2.4常量 28
2.3数据类型 30
2.3.1基本数据类型 31
2.3.2类型检查方式 33
2.3.3类型检查运算符 34
2.3.4类型转换 35
2.4运算符 37
2.4.1算术运算符 38
2.4.2赋值运算符 39
2.4.3关系运算符 40
2.4.4逻辑运算符 41
2.4.5位运算符 42
2.4.6自增和自减运算符 43
2.4.7条件运算符 44
2.4.8其他运算符 45
2.4.9运算符的优先级 45
第3章 ActionScript控制语句 47
3.1 if条件语句 47
3.1.1单条件if语句 47
3.1.2双条件if语句 49
3.1.3多条件if语句 50
3.1.4嵌套if语句 53
3.2 switch条件语句 54
3.3 while循环语句 56
3.4 do while循环语句 57
3.5 for循环语句 59
3.5.1基本for语句 59
3.5.2嵌套for语句 60
3.6 for in循环语句 61
3.7 for each循环语句 63
3.8其他语句 64
3.8.1 break语句 64
3.8.2 continue语句 65
3.8.3 return语句 66
第4章 处理函数 67
4.1定义函数 67
4.1.1函数语句 67
4.1.2函数表达式 68
4.2使用函数 69
4.2.1调用函数 70
4.2.2函数的返回值 70
4.2.3函数的作用域 71
4.3函数的参数 72
4.3.1按值或按引用传递参数 72
4.3.2默认参数值 73
4.3.3 arguments对象 74
4.3.4 (rest)参数 75
4.4函数的高级操作 76
4.4.1递归函数 76
4.4.2嵌套函数 78
第5章 处理数组 80
5.1创建数组 80
5.1.1声明数组 80
5.1.2为数组赋值 83
5.1.3 Array类的属性 83
5.2访问数组元素 84
5.3数组基本操作 85
5.3.1插入数组元素 85
5.3.2查询数据元素 87
5.3.3删除数组元素 89
5.3.4对数组排序 90
5.4关联数组 93
5.4.1具有字符串键的关联数组 94
5.4.2具有对象键的关联数组 95
5.4.3使用对象键循环访问 96
5.5多维数组 96
5.5.1由两个索引数组组成的多维数组 97
5.5.2由索引数组和关联数组组成的多维数组 97
第6章 处理日期和时间 100
6.1创建日期和时间对象 100
6.1.1使用空构造函数创建 100
6.1.2传递一个数字创建 101
6.1.3传递多个数字创建 101
6.1.4传递字符串创建 102
6.2操作日期和时间 103
6.2.1获取日期 103
6.2.2处理时间 105
6.2.3转换显示格式 106
6.2.4日期和时间的运算 107
6.3数学函数 108
6.3.1 Math类简介 108
6.3.2 Math类常量 109
6.3.3 Math类方法 110
6.4 Timer类和计时函数 112
6.4.1 Timer类 112
6.4.2计时函数 113
第7章 操作字符串与正则表达式 115
7.1创建字符串 115
7.1.1 String类 115
7.1.2 String类的length属性 117
7.2字符串的基本操作 118
7.2.1字符串大小写转换 118
7.2.2替换字符串中的子字符串 118
7.2.3连接字符串 120
7.2.4比较字符串 121
7.3检索字符串 121
7.3.1根据字符位置检索字符 121
7.3.2检索子字符串的字符位置 122
7.3.3检索匹配的子字符串 123
7.4截取字符串 124
7.4.1根据字符位置截取子字符串 124
7.4.2分隔字符串 125
7.5正则表达式 126
7.5.1正则表达式语法 126
7.5.2定义正则表达式 128
7.5.3匹配数据 129
7.5.4正则表达式示例 132
第8章 面向对象编程 134
8.1面向对象编程思想概述 134
8.1.1对象概述 134
8.1.2封装 135
8.1.3继承 135
8.1.4多态 136
8.2类和对象 137
8.2.1定义类 137
8.2.2构造函数 138
8.2.3类成员修饰符 139
8.3定义方法 141
8.3.1静态方法 141
8.3.2实例方法 142
8.3.3 get和set存取器方法 144
8.3.4绑定方法 145
8.4定义属性 146
8.4.1静态属性 146
8.4.2实例属性 148
8.5继承 148
8.5.1类继承 149
8.5.2属性继承 151
8.5.3方法继承 152
8.6接口 154
8.6.1定义接口 154
8.6.2实现接口 155
第9章 设计应用程序界面布局 158
9.1定义应用程序布局 158
9.1.1 WindowedApplication容器 158
9.1.2组件大小 163
9.1.3组件定位 166
9.2基本布局 169
9.2.1 controlBarContent组件 169
9.2.2 BorderContainer组件 170
9.2.3 VGroup组件和HGroup组件 174
9.2.4 HDividedBox组件和VDividedBox组件 175
9.3窗口模式布局 177
9.3.1 Panel组件 177
9.3.2 TitleWindow组件 180
9.4 Form组件 183
9.5 TileGroup组件 185
第10章 设计界面显示组件 188
10.1文本显示类 188
10.1.1 Label组件 188
10.1.2 RichText组件 191
10.1.3 RichEditableText组件 193
10.2文本输入类组件 196
10.2.1 TextInput组件 196
10.2.2 TextArea组件 199
10.3按钮类 201
10.3.1 Button组件 201
10.3.2 LinkButton组件 203
10.4选择类 204
10.4.1 CheckBox组件 205
10.4.2 RadioButton组件 208
10.4.3 PopUpButton组件 210
10.4.4 PopUpMenuButton组件 212
10.5日期类 214
10.5.1 DateChooser组件 214
10.5.2 DateField组件 216
10.6列表类 218
10.6.1 ComboBox组件 219
10.6.2 DropDownList 221
10.6.3 List组件 224
10.6.4 Tree组件 227
10.7其他组件 231
10.7.1 Image组件 231
10.7.2 ColorPicker组件 232
10.7.3 NumericStepper组件 234
10.7.4 VideoPlayer组件 236
第11章 设计应用程序导航 239
11.1导航容器和导航菜单组件简介 239
11.2导航容器 240
11.2.1 ViewStack 240
11.2.2 Accordion 243
11.2.3 TabNavigator 245
11.3导航组件 248
11.3.1 ButtonBar 249
11.3.2 LinkBar 251
11.3.3 ToggleButtonBar 252
11.3.4 TabBar 255
11.3.5 MenuBar 257
第12章 操作XML 261
12.1创建XML对象 261
12.1.1使用表达式创建 261
12.1.2使用构造函数创建 262
12.1.3从外部文件创建 263
12.1.4引用其他类型创建 264
12.2 XML对象方法 264
12.3访问XML数据 265
12.3.1遍历XML节点 265
12.3.2访问XML节点 266
12.3.3访问XML属性 268
12.4查找XML数据 270
12.4.1按节点查找 270
12.4.2按属性查找 271
12.5添加XML数据 273
12.5.1添加节点 273
12.5.2插入节点 274
12.5.3添加属性 275
第13章 操作系统文件 276
13.1文件系统组件 276
13.1.1 FileSystemList 277
13.1.2 FileSystemTree 280
13.1.3 FileSystemComboBox 282
13.1.4 FileSystemDataGrid 283
13.1.5 FileSystemHistoryButton 284
13.2文件操作基础知识 286
13.2.1 File类简介 286
13.2.2指定路径 287
13.2.3使用特殊目录 288
13.2.4获取文件系统信息 290
13.3操作文件 291
13.3.1获取文件信息 291
13.3.2创建临时文件 293
13.3.3复制和移动文件 293
13.3.4枚举目录中的文件 294
13.3.5删除文件 295
13.3.6查找两个文件的相对路径 295
13.3.7让用户选择文件 296
13.4操作目录 300
13.4.1创建目录 300
13.4.2复制和移动目录 301
13.4.3枚举目录 301
13.4.4打开浏览目录对话框 302
13.4.5删除目录 304
13.4.6获取可用空间 304
13.5使用FileStream类操作文件 305
13.5.1 FileStream类简介 305
13.5.2打开模式 306
13.5.3读取和写入文件 307
13.5.4异步读取和写入 312
第14章 数据绑定、格式化和验证 314
14.1数据模型 314
14.1.1使用组件定义 314
14.1.2使用脚本定义 316
14.1.3使用类定义 317
14.2数据绑定 320
14.2.1使用大括号运算符绑定 320
14.2.2使用Binding组件绑定 322
14.2.3使用Bindable关键字绑定 323
14.2.4使用脚本绑定 326
14.3数据格式化 329
14.4数据验证 331
14.4.1数据验证组件简介 331
14.4.2使用数据验证组件 332
14.4.3自定义验证组件 336
第15章 数据显示组件 340
15.1 DataGrid组件简介 340
15.2指定数据源 342
15.2.1内部数据源 342
15.2.2外部数据源 344
15.3设置显示外观 346
15.3.1使用DataGrid样式 346
15.3.2自定义标题的格式 347
15.3.3定义列的格式 350
15.3.4定义单元格的格式 352
15.4高级操作 353
15.4.1获取行数据 353
15.4.2修改单元格数据 354
15.4.3数据分页显示 356
15.4.4数据排序 361
15.5 Repeater组件 364
15.5.1 Repeater组件简介 364
15.5.2 Repeater组件示例 365
第16章 读写SQLite数据库 369
16.1 SQLite简介 369
16.2数据库操作准备工作 370
16.2.1创建数据库 370
16.2.2创建数据表 372
16.2.3关闭数据库连接 375
16.3基本操作 375
16.3.1执行SQL语句 375
16.3.2获取数据 377
16.3.3插入数据 381
16.3.4更新和删除数据 385
16.4使用事务 388
16.5处理数据库错误 390
16.5.1连接错误 390
16.5.2语法错误 391
16.5.3约束错误 392
16.6优化数据库 393
16.6.1使用本地SQL数据库的最佳做法 393
16.6.2提高数据库性能 394
第17章 AIR开发高级技术 397
17.1光标管理 397
17.1.1使用自定义光标 397
17.1.2使用忙碌光标 400
17.2处理拖放 402
17.2.1拖放实现机制 402
17.2.2实现基本的列表类拖放 402
17.2.3在同一组件上实现拖放 404
17.2.4拖放行为类 405
17.2.5手动拖放实例 406
17.3网络连接技术 409
17.3.1检测网络状态 409
17.3.2使用URLLoader类和URLStream类 411
17.3.3从外部文档加载数据 412
17.3.4使用与外部脚本进行通信 415
17.3.5使用浏览器打开URL 416
17.4.6显示HTML内容 418
17.4使用声音媒体 421
17.4.1基础知识 421
17.4.2加载外部声音文件 422
17.4.3处理嵌入的声音 424
17.4.4处理声音流文件 425
17.4.5播放声音 426
17.5查看PDF文件 429
17.5.1检测PDF功能 429
17.5.2加载PDF内容 430
17.6操作系统剪贴板 432
17.6.1剪贴板工作原理 432
17.6.2 Clipboard类简介 433
17.6.3指定数据格式 435
17.6.4指定数据传输模式 436
17.6.5数据序列化 436
第18章 物业管理系统 442
18.1系统概述 442
18.1.1系统需求分析 442
18.1.2功能模块设计 443
18.1.3数据库设计 444
18.2准备工作 445
18.2.1新建项目 446
18.2.2项目目录结构 447
18.2.3创建数据库和数据表 448
18.3公共模块 449
18.3.1设计数据源 449
18.3.2数据库连接类 452
18.3.3数据库操作类 453
18.3.4数据实例类 455
18.4业主信息管理 457
18.4.1新增业主 457
18.4.2查看业主列表 459
18.4.3编辑业主 464
18.5费用类别管理 466
18.6物业费用管理 470
18.6.1新增费用信息 470
18.6.2维护费用 477
18.7整合应用程序 484
18.7.1系统登录 484
18.7.2皮肤切换 486
18.7.3下拉菜单 488