tanamonの稀に良く書く日記

KEEP CALM AND DRINK BEER

MXMLタグとActionScript

MXMLタグは、コンパイラによって一度ActionScriptファイルに変換されます。
そのため、MXMLタグからActionScriptが生成されるのか予測することができます。

step2.mxmlの定義

<?xml version="1.0" encoding="utf-8"?>
<mx:pplication xmlns:x="http:/www.adobe.com/2006/mxml" layout="absolute">
	<mx:utton id="btn" label="My Button" height="100"/>
</mx:pplication>


このようなMXMLの場合、以下のようなActionScriptに変換されます。
(実際はもう少し複雑なファイル構成になりますが、おおまかな概念として把握してください)

変換後のActionScript

public class step2 extends Application {
	public var btn:Button;
	
	override public function initialize():void {
		this.layout = "absolute";
		
		btn = new Button();
		btn.label = "My Button";
		btn.height = "100";
		
		this.addChild(btn);
	}
}


基本的なルールとしては次のようなものになります。

  • MXMLファイル名がクラス名になる。親クラスはルートタグのコンポーネント名になる。
  • コンポーネントのidが変数名になり、全てpublic変数として定義される。
  • そのため、1つのMXMLファイル上で同じidを複数指定することができない。
  • id以外のタグ属性については、各コンポーネントの変数の値として設定される。