読者です 読者をやめる 読者になる 読者になる

はじめてのAir,MXMLコンポーネント

とりあえずプロジェクトを作ります

とりあえずAirプロジェクトを作って見ます。
「新規→AIRプロジェクト」でプロジェクト作成します。

特に設定を変更しなければプロジェクト名.mxmlというファイルがデフォルトで作成されます。
それが一番メインになるmxmlコンポーネントになります。
中身はこんな感じ。

<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
</mx:WindowedApplication>

MXMLにプログラムを書いて見る

MXMLはIUIComponentを実装されたクラスの派生クラスとして生成されます。
たとえば以下の場合だと、WindowedApplicationクラスの派生クラスになります。

<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication
	xmlns:mx="http://www.adobe.com/2006/mxml"
	layout="absolute"
	creationComplete="initApp()">
	<mx:Script>
	<![CDATA[
	public function initApp( ):void{
		trace("Application Creation Complete");
	}
	]]>
	</mx:Script>
</mx:WindowedApplication>

上みたいな感じで、プログラムを書けます。creationCompleteはコンポーネントの生成が完了した時点でコールされます。もし、コンストラクタのような生成が完了するよりも前のタイミングでコールしたい場合にはinitializeで指定できます。

MXMLに配置できるもの

MXMLに配置、追加できるものはIUIComponentを実装されたクラスに限られます。
ボタンなど、FLEXコンポーネントは全てIUIComponentが実装されています。
なのでそのままSpriteなどのDisplayObjectをaddChildすることはできません。


そこら辺の話はそのうち。