
本书共18章,全面、详尽、深入浅出地讲解了Adobe AIR应用开发的各个方面,主要内容包括最基本的AIR概念、环境配置、ActionScript编程语法、数据操作、使用组件设计AIR应用程序界面、控制界面的显示组件和导航菜单、文件与数据库的操作以及如何自定义光标和实现拖放等内容。本书配套光盘包括各章内容所用的代码,以及整个应用所需要的开源类库等相关项目文件。
本书可以作为AIR的入门书籍使用,也可以帮助中级读者提高技能,对高级读者也有一定的启发意义。
Adobe AIR(Adobe Integrated Runtime)是针对网络与桌面应用的结合所开发出来的技术,可以不必经由浏览器而对网络上的云端程序做控制。它能使开发者在熟悉的环境下工作,利用自己觉得最舒适的工具,并且支持通过Flash、Flex、HTML、JavaScript和Ajax技术来快速建立用户体验更好的应用程序。本书以Adobe Flex技术为基准剖析目前最新版本的详细解决方案。
本书内容
第1章 开启AIR之门。本章主要介绍如何开始使用AIR,包含AIR简介、AIR的安装、搭建开始环境、创建AIR程序以及AIR程序的目录结构。
第2章 ActionScript编程基础。本章系统地介绍ActionScript 3.0语法基础,包括变量、常量、数据类型、类型转换、运算符的分类以及优先级等。
第3章 ActionScript控制语句。本章详细介绍ActionScript提供的各种控制语句,如if、switch、do while、for、for in以及break等。
第4章 处理函数。本章主要介绍函数的使用,包括函数的定义、函数表达式、调用函数、使用返回值、为函数定义参数以及一些高级操作。
第5章 处理数组。本章主要介绍数组的操作,包括声明数组、赋值、访问元素、插入元素、查询和排序等,还介绍关联数组和多维数组的使用。
第6章 处理日期和时间。本章主要介绍处理日期和时间的方法,包括使用一个数字创建日期、字符串创建日期、获取当前日期、转换日期格式和运算等,还介绍Timer类和一些数学函数的使用。
第7章 操作字符串与正则表达式。本章主要介绍如何对字符串进行操作,如创建字符串、转换大小写、比较字符串、检索字符串、截取字符串等,还介绍正则表达式的使用。
第8章 面向对象编程。本章详细介绍面向对象的使用,包括面向对象的概念、类、构造函数、方法、属性以及继承和接口等。
第9章 设计应用程序界面布局。本章详细介绍用于设计程序布局的容器类组件,如BorderContainer、Panel、Form和TileGroup等。
第10章 设计界面显示组件。本章针对AIR中用于界面显示的组件进行详细介绍,其中包含文本显示类、文本输入类、按钮类、选择类、列表类和日期类,以及常用的其他组件。
第11章 设计应用程序导航。本章详细介绍AIR提供的导航组件,包括ViewStack、Accordion、ButtonBar、LinkBar和MenuBar等,同时详细介绍设计应用程序时需要用到的各种导航组件,如TabNavigator、ButtonBar和MenuBar组件等。
第12章 操作XML。本章详细介绍操作XML的方法,如创建XML对象、遍历XML节点和属性、查询XML数据、添加XML节点和插入属性等。
第13章 操作系统文件。本章介绍5个内置文件系统组件的使用、操作文件和目录的方法以及如何向文件读取和写入数据。
第14章 数据绑定、格式化和验证。本章主要介绍如何对数据的模型进行定义、绑定数据的各种方法、格式化数据以及验证数据的有效性。
第15章 数据显示组件。本章详细介绍DataGrid组件的使用,包括绑定内部数据源、更改显示样式、自定义标题和列格式、获取选择的数据以及分页显示等。
第16章 读写SQLite数据库。本章主要讲解对SQLite数据库的操作,包括创建数据库和表、执行SQL语句、显示数据、插入数据、使用事务以及错误的处理等。
第17章 AIR开发高级技术。本章主要讲解在程序中自定义光标、处理拖放、加载外部数据、显示HTML内容、处理声音和PDF等。
第18章 物业管理系统。本章主要介绍系统的实现过程,包括需求分析、数据库设计、构建公共模块、管理业主和费用等,最后介绍应用程序的整合过程。
本书特色
本书采用大量的实例进行讲解,力求通过实例使读者更形象地理解ActionScript的编程思想,快速掌握AIR的组件开发。本书难度适中,内容由浅入深,实用性强、覆盖面广、条理清晰。
? 知识点全
本书紧紧围绕Flex进行AIR程序开发展开讲解,具有很强的逻辑性和系统性。
? 实例丰富
书中各实例均经过作者精心设计和挑选,它们都是作者根据在实际开发中的经验总结而来,涵盖了在实际开发中所遇到的各种问题。
? 应用广泛
对于精选案例,本书给了详细步骤,结构清晰简明、分析深入浅出,而且有些程序能够直接在项目中使用,避免读者进行二次开发。
? 基于理论,注重实践
在讲述过程,本书不仅介绍理论知识,而且在合适位置安排综合应用实例,或者小型应用程序,将理论应用到实践当中,来加强读者实际应用能力,巩固AIR开发基础和知识。
? 随书光盘
本书为实例配备了视频教学文件,读者可以通过视频文件更加直观地学习AIR的使用知识。
? 网站技术支持
读者在学习或者工作的过程中,如果遇到实际问题,可以直接登录www.itzcn.com与我们取得联系,作者会在第一时间内给予帮助。
? 贴心的提示
为了便于读者阅读,全书还穿插着一些技巧、提示等小贴士,体例约定如下。
提示:通常是一些贴心的提醒,让读者加深印象或提供建议,或者解决问题的方法。
注意:提出学习过程中需要特别注意的一些知识点和内容,或者相关信息。
技巧:通过简短的文字,指出知识点在应用时的一些小窍门。
读者对象
本书具有知识全面、实例精彩、指导性强的特点,力求以全面的知识性及丰富的实例来指导读者透彻地学习AIR各方面的知识。本书可以作为AIR的入门书籍使用,也可以帮助中级读者提高技能,对高级读者也有一定的启发意义。
本书适合以下人员阅读学习。
? AIR应用开发人员。
? Flex开源项目爱好者。
? RIA应用爱好者。
? 各大中专院校的在校学生和相关授课老师。
? 网站建设及网络开发人员。
? 其他Web编程爱好者。
除了封面署名人员之外,参与本书编写的还有李乃文、孙岩、马海军、张仕禹、夏小军、赵振江、李振山、李文采、李海庆、何永国、李海峰、陶丽、吴俊海、安征、张巍屹、崔群法、王咏梅、康显丽、辛爱军、牛小平、贾栓稳、王立新、苏静、赵元庆、郭磊、徐铭、李大庆、王蕾、张勇、郝安林等。本书在编写过程中难免会有漏洞,欢迎读者通过清华大学出版社网站www.tup.tsinghua.edu.cn与我们联系,帮助我们改正提高。
??
??
??
??
Adobe AIR程序开发实战详解
II
III
第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
??
??
??
??
Adobe AIR程序开发实战详解
X
IX
Java开源项目 Spring+Hibernate+Struts项目开发详解
错误!文档中没有指定样式的文字。
VIII
VII