Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Пробросить flashVars сквозь загрузчик (http://www.flasher.ru/forum/showthread.php?t=156389)

mikhailk 20.05.2011 16:46

Пробросить flashVars сквозь загрузчик
 
Есть флешка, в которую извне поступают параметры через флашварз. На входе опрашиваются и запоминаются через this.loaderInfo.parameters.

Потребовалось сделать внешний загрузчик (просто грузит флешку и бросает ее на сцену), теперь эти флашварз поступают в него и подгружаемая флешка их не видит. Можно ли как-нибудь сделать так, чтобы подгружаемая флешка все равно брала флашварз из this.loaderInfo.parameters?

Hidest 20.05.2011 17:45

Сделайте дополнительные поля класса загружаемой флешки, соответствующие переменным из флешварз и при загрузке инициализируйте их в загрузчике.

mikhailk 20.05.2011 17:48

это и так понятно
сейчас я просто пробрасываю публичным методом

в загружаемой флешке:
Код AS3:

public function setFlashVars(flashVars:Object) : void
{
        ApplicationConfig.flashVars = flashVars;
}

в загрузчике:
Код AS3:

private function onLoadingComplete(e:Event) : void
{
        addChild(loader);
 
        var mc:Object = loader.content as Object;
        try
        {
                mc.setFlashVars(flashVars);
        }
        catch (e:Error)
        {
                trace("IFrameLoader::onLoadingComplete",e.message);
        }
}

Просто хотелось красивее

dimarik 20.05.2011 18:13

Навскидку пару вариантов.
1. Формировать GET-url с параметрами, полученными из флешварз загрузчика.
2. В загружаемой флешке можно обратиться к root.loaderInfo.parameters и stage.loaderInfo.parameters.

gloomyBrain 20.05.2011 18:39

3. Создать интерфейс IContent или ILoader и вытаскивать / пихать по интерфейсам из this.parent / в loader.content соответственно

mikhailk 20.05.2011 23:06

Цитата:

В загружаемой флешке можно обратиться к root.loaderInfo.parameters и stage.loaderInfo.parameters.
выглядит наиболее простым

dimarik 20.05.2011 23:22

Спасибо )

cleptoman 21.05.2011 12:41

я бы советовал поступить как в п.1 предложенным Димариком..ибо секьюрней)

mikhailk 21.05.2011 12:53

тоже верно


Часовой пояс GMT +4, время: 07:37.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.