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

时间:2009-12-21 15:43:47

标签: 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"

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

1 个答案:

答案 0 :(得分:9)

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

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

上面引用的其他2个命名空间是组件命名空间。这些是对构成将在应用程序中使用的UI组件的特定ActionScript类的引用。 / flex / spark组件集是新的flex 4组件,它们具有皮肤和组件实现分离。 / flex / halo集是flex 3集中存在的组件。小心虽然/ flex / halo已在新的每晚构建中重命名为/ flex / mx。

在Flex 3中,只有一种语言可用且只有一个组件集,因此它们将这些组件的定义一起卡在一个文件中。因此,虽然引擎盖下的技术部分没有改变,但是adobe公开它们的方式(通过多个命名空间)具有。这可能看起来更复杂,但请记住,在执行flex工作时,您始终为mxml中的所有视图组件创建xml命名空间。所以现在你和核心框架玩的水平相同,这很棒。此外,在Flex 4中,可以使用多种语言和组件集,因此无法创建Flex 3中存在的一对一映射。

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

HTH,

SIM