在默认情况下,flash Builder 4 在创建project时,会使用一下声明:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
<fx:Declarations>
<!-- 将非可视元素(例如服务、值对象)放在此处 -->
</fx:Declarations>
</s:Application>
可以自己定义其namespace,如下:
<?xml version="1.0" encoding="utf-8"?>
<myS:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:myS="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
<fx:Declarations>
<!-- 将非可视元素(例如服务、值对象)放在此处 -->
</fx:Declarations>
<myS:Label>
hello,I'm use my own nameSpace.
</myS:Label>
</myS:Application>
其实修改后意义不大,但可以加强对namespace的理解。
当我们引进同个工程下的不同包时,要注意namespace。
经常碰到无法解析组件,这很大可能是namespace的问题。不同版本的flex使用的namespace有区别。经常会碰到halo与mx。有时候一些旧的项目在flex4中运行,需要做一些修改。