Return to Snippet

Revision: 69744
at August 25, 2015 06:12 by pouradam


Initial Code
package org.epayam.AppName {	
	import com.greensock.events.LoaderEvent;
	import com.greensock.loading.LoaderMax;
	import com.greensock.loading.XMLLoader;
	import flash.display.Sprite;
	import flash.display.StageAlign;
	import flash.display.StageScaleMode;
	import flash.events.Event;
	import org.epayam.AppName.ast.Dta;
	
	public class Main extends Sprite {
		
		public static var p:Sprite; //path
		
		private const initFileUrl:String = "xml/SomeFile.xml";
		
		public function Main():void {
			if (stage) {
				init();
			} else {
				addEventListener(Event.ADDED_TO_STAGE, init);
			}
		}
		
		/*~~~~~~~~~~~~~~~~~~~~~~~~(Private)~~~~~~~~~~~~~~~~~~~~~~~*/
		private function init(e:Event = null):void {
			removeEventListener(Event.ADDED_TO_STAGE, init);
			loadInitFiles();
		}
		
		private function loadInitFiles():void {			
			var loader:XMLLoader = new XMLLoader(initFileUrl, {name: "data",
                        onComplete: dataLoaded});
			loader.load();
		}
		
		private function dataLoaded(e:LoaderEvent):void {
			setData();
			setupApp();
			showApp();
		}
		
		private function setData():void {
			Dta.pgeTxt = LoaderMax.getContent("data");
		}
		
		private function setupApp():void {			
			stage.scaleMode = StageScaleMode.NO_SCALE;
			stage.align = StageAlign.TOP_LEFT;
			App.p = this; // to be found by other classes
		}
		
		private function showApp():void {
			app.init(); // an empty frame for loagding pages
		}
	}
}

Initial URL


Initial Description
Often in my apps, some primary data are needed to be loaded, saved and then the App start to load the first page. Here is the best Main class I have so far come up with, that I use for my own apps.

Initial Title
Main - Air for Mobile

Initial Tags


Initial Language
ActionScript 3