Bei der Programmierung von dynamische Anwendungen ist es immer sinnvoll, änderbare Texte und Variablen in externen Dateien auszulagern. Auf diese Weise kann man dynamische Anwendungen erstellen, ohne die ActionScript-Dateien zu bearbeiten oder neu kompilieren zu müssen. Weiter geht es nach dem Break…
Die Properties-Datei kann eine ganz normale Text-Datei („*.txt“) sein oder wie in Java, eine Datei mit der Endung „*.properties
“ sein. ACHTUNG! Eine Java Properties-Datei ist syntaktisch nicht kompatibel mit einer ActionScript 3 Properties-Datei.
Man sollte Sonderzeichen, reservierte Wörter und LEERZEICHEN nicht verwenden! Die erste Variable beginnt ohne dem Trennzeichen „&“.
derName=DesireHD
&hersteller=HTC
&datum=2010
&webseite=www.htc.de
&versionen=Cupcake,Donut,Eclair,Froyo,Gingerbread,IceCream
Wie genau ein Loader funktioniert, habe ich bereits hier beschrieben.
var myRequest:URLRequest = new URLRequest('data.properties'); myRequest.method = URLRequestMethod.POST; var myVariables:URLLoader = new URLLoader(); myVariables.dataFormat = URLLoaderDataFormat.VARIABLES; myVariables.addEventListener(Event.COMPLETE, fertig); try { myVariables.load(myRequest); }catch (error:Error) { trace('Die Datei konnte nicht geladen werden: ' + error); }
var loader:URLLoader = URLLoader(event.target); this.a_txt.text = loader.data.derName; this.b_txt.text = loader.data.hersteller; this.c_txt.text = loader.data.datum; this.d_txt.text = loader.data.webseite; var versionArray:Array = loader.data.versionen.split(','); this.e_txt.text = versionArray[3];
package { import flash.net.URLLoader; import flash.net.URLLoaderDataFormat; import flash.net.URLRequest; import flash.net.URLRequestMethod; import flash.events.Event; import flash.display.Sprite; public class properties extends Sprite { public function properties() { var myRequest:URLRequest = new URLRequest('data.properties'); myRequest.method = URLRequestMethod.POST; var myVariables:URLLoader = new URLLoader(); myVariables.dataFormat = URLLoaderDataFormat.VARIABLES; myVariables.addEventListener(Event.COMPLETE, fertig); try { myVariables.load(myRequest); } catch (error:Error) { trace('Die Datei konnte nicht geladen werden: ' + error); } } private function fertig(event:Event):void { var loader:URLLoader = URLLoader(event.target); this.a_txt.text = loader.data.derName; this.b_txt.text = loader.data.hersteller; this.c_txt.text = loader.data.datum; this.d_txt.text = loader.data.webseite; var versionArray:Array = loader.data.versionen.split(','); this.e_txt.text = versionArray[3]; } } }
Kommentar verfassen