http://www.adobe.com/cn/devnet/flex/articles/flex3and4_differences_02.html
将 Flex 3 应用程序迁移到 Flex 4 时,步骤并不复杂。除了一些缺陷修复以及默认主题稍有变化,您的应用程序通常可以像 Flex 3 中那样正常运行(或更好)。但您必须注意几点。
播放器依赖性
请务必针对 Flash Player 10 进行编译。Flex 4 SDK 需要 Flash Player 10 支持。
字体选择器需要一个命名空间
CSS 字体选择器将 Flex 类命名为 style。例如,以下是 Button 和 DateField 的字体选择器:
Button {
cornerRadius: 10;
}
DateField {
color: #780800;
}
从 Flex 4 SDK 开始,当应用程序使用字体选择器时,需要命名空间。如果您只在 Flex 应用程序中使用 MXML 2006 命名空间,请将以下默认命名空间声明添加到 CSS 中:
<mx:Style>
@namespace "http://www.adobe.com/2006/mxml";
…
</mx:Style>
如果在应用程序中使用多个命名空间,您需要在 CSS 中提供各个命名空间。有关示例,请参阅本文稍后部分中的 Flex 4 中的命名空间与包。
此外,如果应用程序使用 StyleManager.getStyleDeclaration("Button") 等方法,字体选择器必须包含它的包。例如,对 getStyleDeclaration() 的调用将改为 StyleManager.getStyleDeclaration("mx.controls.Button")。
主题更改
Flex 3 (MX) 组件的默认主题现在是 Spark 主题。因此,当您使用 Flex 4 SDK 编译应用程序时,它的外观和大小可能有所不同。但是,如果要使用 Flex 3 的外观,您还是可以做到的,因为 Flex 4 包含 Flex 3 的 Halo 主题。要使用 Halo 主题进行编译,您可以使用附加编译器参数 -compatibility-version=3.0。在 Flash Builder 4 中,您可以在“Properties Panel”(属性面板)中这样做。在“Properties Panel”(属性面板)中,选择“Flex Compiler”(Flex 编译器)并单击“Use Flex 3 compatibility mode”(使用 Flex 3 兼容性模式)复选框(请参阅图 1)。 <script type="text/javascript"></script>
图 1.使用 Flex 3 兼容性模式
您也可以通过“Properties”(属性)->“Flex Theme”(Flex 主题)面板将主题从默认 Spark 主题改为 Halo。在“Flex Theme”(Flex 主题)面板中,单击 Halo 主题(请参阅图 2)。
图 2.从“Properties Panel”(属性面板)中选择“Halo Theme”(Halo 主题)
如果您选择使用新的 Spark 主题,请注意许多可用于 Halo 主题的样式无法用于 Spark 主题。Spark 主题只支持数量有限的样式。要了解 Spark 外观可以使用哪些样式,您应当参阅 ASDoc。将为每个组件列出的各个样式指定一个“主题”。如果未指定主题,表示该样式既可用于 Halo,也可用于 Spark 主题。Flex 4 还加入了一种设计用于快速模型的线框外观。线框主题不支持样式更改。
除了主题更改外,Flex 4 应用程序的默认预下载器也已经改为 mx.preloaders.SparkDownloadProgressBar。这个更轻量级的预下载器可以缩短一些启动时间。如果要使用 Flex 3 预下载器,您只需更改一行代码。在 Application
标签中添加以下内容:preloader="mx.preloaders.DownloadProgressBar"
。
如果要将应用程序从 Flex 3 迁移到 Flex 4 ,我不建议将各个 Flex 3 MX 组件替换为它们对应的 Flex 4 组件。这样投入时间可能并不是一个好方法。您应当为新的应用程序转而使用 Flex 4 组件架构。
自动库位置更改
在 Flex 3 中,自动库位于 {sdk}/frameworks/libs 中,而在 Flex 4 中,它位于 {sdk}/frameworks/libs/automation 中。用户应当确保 frameworks/libs 中没有自动库副本。
分享到:
相关推荐
6. **CSDN博客资源**:"将 Flex 3 应用程序迁移到 Flex 4 - tk890328的专栏 - 博客频道 - CSDN_NET.mht"可能是国内开发者分享的迁移经验,可能包含了一些针对性的技巧和常见问题解决方案,对于国内用户来说具有很高...
将Flex3的应用程序迁移到Flex4并非一项艰巨的任务,尽管存在一些重要的考虑因素。首先,由于Flex4需要Flash Player 10的支持,确保应用程序针对此版本的播放器进行编译是至关重要的。其次,Flex4中的CSS字体选择器...
AdobeAIR的发布标志着Flex在桌面应用程序领域的发展,它允许开发者利用Flex技术部署桌面应用和基于浏览器的应用程序。Flex 3还在设计和开发协作方面取得了创新,让设计人员和开发人员能够紧密合作,创造出既美观又...
本文将详细介绍如何将原有的Flex3项目成功地迁移到FlashBuilder4中,同时保持原有的项目特性不变,或者选择性地利用FlashBuilder4的新特性。我们将分为三个部分进行讲解:仅使用FlashBuilder4的新工具特性、同时保留...
为了帮助开发者顺利地将旧版Flex应用迁移到Flex 4,Adobe提供了一份详细的迁移指南,包括: - **代码兼容性**:指出Flex 4中不兼容或已弃用的功能。 - **最佳实践**:给出迁移过程中应遵循的最佳实践建议。 - **工具...
《ArcGIS for Flex API 2.5到3.x迁移指南》 随着技术的不断发展,ArcGIS for Flex API也经历了从2.5版本到3.x版本的重大升级。这次升级不仅涉及到了一些关键组件的名字变化,还引入了新的特性和功能,同时删除了...
【标题】: "使用 Grails 和 Flex 构建 Web 应用程序" 是一个主题,主要探讨了如何结合两种技术来开发高效的Web应用程序。Grails是一个基于Groovy语言的开源Web应用框架,它简化了Java平台上的开发流程,而Flex是...
第3章 Flex企业应用开发中的主要元素 3.1 企业应用的特点 3.2 Flex Application 3.2.1 SystemManager 3.2.2 Preloader 3.2.3 Application的作用和主要属性 3.2.4 通过SWFLoader加载Application ...
- **第5章:Flex与AIR:将应用程序带到桌面** 介绍了Adobe AIR技术如何使RIA能够运行在桌面上,并与文件系统和文档管理技术进行交互。同时,也探讨了如何在同一个环境中整合HTML技术和Flash平台技术。 - **第二...
第3章 Flex企业应用开发中的主要元素 3.1 企业应用的特点 3.2 Flex Application 3.2.1 SystemManager 3.2.2 Preloader 3.2.3 Application的作用和主要属性 3.2.4 通过SWFLoader加载Application ...
4. 将Flex请求映射到J2EE应用中的对应服务或控制器。 5. 利用Spring等框架处理业务逻辑和数据访问。 6. 通过Hibernate等ORM工具管理数据库操作。 7. J2EE应用处理业务逻辑后,将结果返回给Flex客户端展示。 这种...
Flex企业应用开发实战源代码 本书由业界4位拥有近10年企业级应用开发经验的资深专家撰写,权威性毋庸置疑。 全书共分为4大部分,涵盖企业级应用开发的...附录 Flex Builder 3中的项目如何迁移至Flash Builder 4 315
1. **Apache Flex SDK 4.6**:Flex SDK是一个开源开发工具集,用于创建富互联网应用程序(RIA),尤其是基于Flash Player或Adobe AIR的项目。版本4.6是Flex SDK的一个稳定版本,提供了ActionScript编程语言、Flex...
”涉及到的是Adobe Flex开发中的一个常见问题,Flex是一个用于构建富互联网应用程序(RIA)的开源框架,它基于ActionScript和MXML,而Flash Player则是运行这些Flex应用的必要环境。现在我们来详细讨论这个问题及其...
Flex SDK 3.6.0 是 Adobe 公司推出的一款用于开发富互联网应用程序(Rich Internet Applications,RIA)的开发工具包。它基于ActionScript 3.0编程语言和Flash Player运行时环境,允许开发者创建交互性强、图形丰富...
在IT行业中,将Flex应用程序转化为Web项目是一项常见的需求,特别是在过渡到现代Web开发技术的过程中。Flex是一种基于ActionScript和MXML的开源框架,主要用于构建富互联网应用(RIA)。本资源包含了一系列必要的库...