apache-flex - Flex 4 中的 mx/fx/s 对象类型有什么区别?

标签 apache-flex namespaces flex4 flex-spark halo

Flex4 提供以下命名空间:

xmlns:fx="http://ns.adobe.com/mxml/2009" 
xmlns:s="library://ns.adobe.com/flex/spark" 
xmlns:mx="library://ns.adobe.com/flex/halo"

有什么区别?哪个命名空间提供哪个功能?我在哪里可以找到相关信息?

最佳答案

命名空间允许您向编译器指定在哪里查找您在 mxml 中引用的文件/类。

Flex 4 中使用了两种不同类型的命名空间。语言命名空间和组件命名空间。 http://ns.adobe.com/mxml/2009 命名空间指定使用哪个版本的 mxml 语言。这包括脚本标签和绑定(bind)标签之类的东西,以及声明和私有(private)标签等新标签。

您在上面引用的其他 2 个命名空间是组件命名空间。这些是对构成您将在应用程序中使用的 UI 组件的特定 ActionScript 类的引用。/flex/spark 组件集是新的 flex 4 组件,具有独立的外观和组件实现。/flex/halo 集是 flex 3 集中存在的组件。请注意,尽管/flex/halo 在新的夜间版本中已重命名为/flex/mx。

在 Flex 3 中,只有一种语言可用,并且只有一个组件集,因此它们将这些定义挤在一个文件中。因此,虽然底层的技术部分没有改变,但 adobe 公开它们的方式(通过多个命名空间)已经改变。起初这可能看起来更复杂,但请记住,在进行 flex 工作时,您总是为 mxml 中的所有 View 组件创建 xml 命名空间。所以现在你和核心框架在同一级别上玩,这很棒。同样在 Flex 4 中,可以使用多种语言和组件集,因此不可能创建 Flex 3 中存在的一对一映射。

有关此主题的更多信息,请参阅有关该主题的 Adob​​e 文档:http://opensource.adobe.com/wiki/display/flexsdk/MXML+2009

HTH,

模拟

关于apache-flex - Flex 4 中的 mx/fx/s 对象类型有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1940830/

相关文章:

apache-flex - Flex 中的最大整数值是多少?

php - 将 PHP MySql 与 Flex 捆绑在一起提供给客户端

css - Flex4 外部样式表 PropertyReference

PHP 包含同一库的不同版本

python - 给定一个描述 object.attribute 的 Python 字符串,如何将属性的命名空间与属性分开?

apache-flex - Flex4 按钮被运行时图形覆盖并且无法使用

php - 我们可以让 Flex-LAMP 应用程序在 Android 上运行吗

dns - 描述 kubernetes 命名空间时的随机字符

flash - 静态函数中的动态变量名

apache-flex - 迁移到 Flex 4