絕大多數MXML標識符合AS2.0規范,MXML文件編譯產生的SWF文件包含相應的AS對象。
AS2.0是一種面向對象的語言,符合ECMAScript第4版規范。
MXML文件的命名規范:
1 : 必須符合AS的命名規范,以字母或下劃線開頭;
2 : 不得使用AS的類名、組件ID標識和命名空間的MXML標識作為文件名;
3 : 文件名必須用小寫的.mxml作為后綴名。
在MXML文件中,組件的屬性使用和AS類相同的命名約定,以小寫字母開頭,每個單詞的開頭字母大寫。你可以有兩種方式設置屬性的值:使用標記的屬性或者子節點標記。Macromedia推薦使用標記的屬性來設置一般組件屬性,復雜的組件屬性用子節點來完成。MXML的組件屬性包含如下:
標量屬性(包括數字及字符串)
如:
<Label width='50' height='25' text='Hello World'/>
注意:屬性的值不能包含@符號
數組屬性
<mx:List>
<mx:dataProvider>
<mx:Array>
<mx:Number>94062</mx:Number>
<mx:Number>14850</mx:Number>
<mx:Number>53402</mx:Number>
</mx:Array>
</mx:dataProvider>
</mx:List>
腳本對象
因為腳本對象比較復雜,所以一般使用子節點的方式來設置屬性的值,如:
<mynamespace:MyComponent>
<mynamespace:nameOfProperty>
<objectType prop1='val1' prop2='val2'/>
</mynamespace:nameOfProperty>
</mynamespace:MyComponent>
腳本對象數組
<mynamespace:MyComponent>
<mynamespace:dataProvider>
<mx:Array>
<mynamespace:ListItem label='One' data='1'/>
<mynamespace:ListItem label='Two' data='2'/>
</mx:Array>
</mynamespace:dataProvider>
</mynamespace:MyComponent>
XML數據
<mynamespace:MyComponent>
<mynamespace:value xmlns:a='http://www.example.com/myschema'>
<mx:XML>
<a:purchaseorder>
<a:billingaddress>
...
</a:billingaddress>
...
</a:purchaseorder>
</mx:XML>
</mynamespace:value>
</mynamespace:MyComponent>
樣式屬性
主要進行組件的樣式控制,如
<mx:TextArea id='myText' text='hello world' fontFamily='Tahoma'/>
//和下面的AS代碼是等效的
myText.text= 'hello world';
myText.setStyle('fontFamily', 'Tahoma');
編譯標記
編譯標記并不直接對應AS類或其屬性,主要有:
<mx:Binding>
<mx:Effect>
<mx:Model>
<mx:Script>
<mx:Style>
<mx:Metadata>
<mx:operation>
<mx:request>
<mx:method>
<mx:arguments>
注意編譯標記的大小寫
其它注意事項
01 : id屬性并不是每個MXML標記必須的;
02 : MXML的根標記不支持id屬性;
03 : 布爾屬性的值只允許true或false;
04 : 標記必須同時包含source和destination屬性,并且不能包含id屬性;
05 : 標記的field屬性是必須的,并且不能包含id屬性;
06 : 標記必須包含wsdl或者serviceName屬性,并且不能同時使用;
07 : 標記必須包含source或者named屬性,并且不能同時使用;
08 : 標記必須包含url或者serviceName屬性,并且不能同時使用;
09 : 標記必須包含name屬性,并且不能包含id屬性;
10 : 標記必須包含name屬性,并且不能包含id屬性。
AS2.0是一種面向對象的語言,符合ECMAScript第4版規范。
MXML文件的命名規范:
1 : 必須符合AS的命名規范,以字母或下劃線開頭;
2 : 不得使用AS的類名、組件ID標識和命名空間的MXML標識作為文件名;
3 : 文件名必須用小寫的.mxml作為后綴名。
在MXML文件中,組件的屬性使用和AS類相同的命名約定,以小寫字母開頭,每個單詞的開頭字母大寫。你可以有兩種方式設置屬性的值:使用標記的屬性或者子節點標記。Macromedia推薦使用標記的屬性來設置一般組件屬性,復雜的組件屬性用子節點來完成。MXML的組件屬性包含如下:
標量屬性(包括數字及字符串)
如:
<Label width='50' height='25' text='Hello World'/>
注意:屬性的值不能包含@符號
數組屬性
<mx:List>
<mx:dataProvider>
<mx:Array>
<mx:Number>94062</mx:Number>
<mx:Number>14850</mx:Number>
<mx:Number>53402</mx:Number>
</mx:Array>
</mx:dataProvider>
</mx:List>
腳本對象
因為腳本對象比較復雜,所以一般使用子節點的方式來設置屬性的值,如:
<mynamespace:MyComponent>
<mynamespace:nameOfProperty>
<objectType prop1='val1' prop2='val2'/>
</mynamespace:nameOfProperty>
</mynamespace:MyComponent>
腳本對象數組
<mynamespace:MyComponent>
<mynamespace:dataProvider>
<mx:Array>
<mynamespace:ListItem label='One' data='1'/>
<mynamespace:ListItem label='Two' data='2'/>
</mx:Array>
</mynamespace:dataProvider>
</mynamespace:MyComponent>
XML數據
<mynamespace:MyComponent>
<mynamespace:value xmlns:a='http://www.example.com/myschema'>
<mx:XML>
<a:purchaseorder>
<a:billingaddress>
...
</a:billingaddress>
...
</a:purchaseorder>
</mx:XML>
</mynamespace:value>
</mynamespace:MyComponent>
樣式屬性
主要進行組件的樣式控制,如
<mx:TextArea id='myText' text='hello world' fontFamily='Tahoma'/>
//和下面的AS代碼是等效的
myText.text= 'hello world';
myText.setStyle('fontFamily', 'Tahoma');
編譯標記
編譯標記并不直接對應AS類或其屬性,主要有:
<mx:Binding>
<mx:Effect>
<mx:Model>
<mx:Script>
<mx:Style>
<mx:Metadata>
<mx:operation>
<mx:request>
<mx:method>
<mx:arguments>
注意編譯標記的大小寫
其它注意事項
01 : id屬性并不是每個MXML標記必須的;
02 : MXML的根標記不支持id屬性;
03 : 布爾屬性的值只允許true或false;
04 : 標記必須同時包含source和destination屬性,并且不能包含id屬性;
05 : 標記的field屬性是必須的,并且不能包含id屬性;
06 : 標記必須包含wsdl或者serviceName屬性,并且不能同時使用;
07 : 標記必須包含source或者named屬性,并且不能同時使用;
08 : 標記必須包含url或者serviceName屬性,并且不能同時使用;
09 : 標記必須包含name屬性,并且不能包含id屬性;
10 : 標記必須包含name屬性,并且不能包含id屬性。