Просмотр полной версии : Загрузка конфигурационного файла вместе с swf
easyLife
17.05.2007, 15:53
Необходимо подгрузить конфигурационный файл(xml) с сервера с параметрами для функции init() (вызывается по событию creationComplete). Как это сделать именно в процессе загрузки всего приложения, а не в теле init() ?
не понял немного, но можно грузить его по initialize, а потом вызывать creationComplete.
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" initialize="initApp()" >
<mx:Script>
<![CDATA[
private function initApp():void {
//грузить здесь
addEventListener(FlexEvent.CREATION_COMPLETE, onCreationComplete, false, 0, true);
}
private function onCreationComplete(event:Event):void
{
//.....
removeEventListener(FlexEvent.CREATION_COMPLETE, onCreationComplete);
}
easyLife
17.05.2007, 20:20
А как подгружаются обычно стили с помощью AS3 ?
Поробовала использовать приведенный выше вариант, происходит следующее:
public function initApp():void {
//load config block
var loader:URLLoader = new URLLoader(new URLRequest("config.xml"));
loader.addEventListener(Event.COMPLETE, confLoad);
addEventListener(FlexEvent.CREATION_COMPLETE, init, false, 0, true);
}
public function confLoad(event:Event):void {
var loader2:URLLoader = URLLoader(event.target);
configData = new XML(loader2.data);
Alert.show(configData);
}
public function init(event:Event):void {
Alert.show('1');
}
Естественно алерт 1 показывается раньше чем содержимое файла. А мне нужно, чтобы я в функции init() смогла использовать параметры, полученные из config.xml и при этом init() вызывался по событию CREATION_COMPLETE
такая схема
1. Убираем из CREATION_COMPLETE инит и пихаем туда что-то типа created = true;
2.Конфиг начинаем грузить initialize. Вешаем на событие загрузки нужного конфига метод который делает такой финт : если created - то дергаем init() если нет то вешаем наш инит на CREATION_COMPLETE.
инит чтобы было удобно, советую оформить в таком виде
public function init(event: * = null) : void
{
....
}
...
easyLife
17.05.2007, 21:12
Спасибо большое!
Очень понравилось оформление функции (это то, что давно искала, но не знала где посмотреть)
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.