ホーム > タグ > Progression

Progression

SceneObjectのaddSceneFromXMLについてのメモ

Progression3都物語で勉強してきたことやけど、よく忘れそうなので今になってメモ。

protected override function _onLoad():void {
	// 実行したいコマンドを登録します。
	addCommand(
		// XML ファイルを読み込みます。
		new LoadURL( new URLRequest( "index.xml" ) ),
		// 匿名関数を実行します。
		function():void {
			// 読み込んだ XML ファイルから子シーンを作成します。
			addSceneFromXML( new XML( this.latestData ) );
		}
	);
}

とする際、XMLのcls属性のString型からgetDefinitionByNameでクラスの参照を生成する際に、「クラス名が定義されてないよ」とReferenceErrorを投げ返してきます。

なので、コンストラクタなどで

public function IndexScene( name:String = null, initObject:Object = null ) {
	// スーパークラスを初期化します。
	super( name, initObject );

	// クラスが SWF ファイルに含まれるように参照しておきます。
	MyScene1;
	MyScene2;
	MyScene3;
	MyScene4;
}

という感じで、ただ参照するためにクラス名のみを書いておくとエラーなく動作します。

Home > Tags > Progression

Search
Feeds
Meta

Return to page top