Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Передача данных из внешнего ролика(загрузчика) в загружаемый ролик (http://www.flasher.ru/forum/showthread.php?t=170921)

Parez 04.11.2011 21:45

Передача данных из внешнего ролика(загрузчика) в загружаемый ролик
 
Возникли проблемы при передаче данных между роликами. У загружаемого ролика есть свой document class, в котором прописан public метод для приёма данных. Этот ролик загружается во внешний ролик с помощью Loader'а. И требуется вызвать тот самый метод. Когда я попробовал явно преобразовать Loader в document class и вызвать этот метод
Код AS3:

DocClass(loader).method(a,b,c);

возникла куча ошибок, говорящих о том, что все объекты и нестандартные типы, используемые в DocClass не найдены.
Как решить эту проблему?

goodguy 04.11.2011 21:58

Цитата:

говорящих о том, что все объекты и нестандартные типы, используемые в DocClass не найдены.
В ошибке так и было написано? =)

-De- 04.11.2011 22:06

А откуда ваша флэшка знает DocClass внешнего ролика?
Ну и надо не Loader к чему-то приводить и что-то вызывать, а его content.
Можно быстро
Код AS3:

(loader.content as Object).method(a,b,c);

- проверка типов и всё такое не производится, но если раз что-то мелкое дёрнуть и забыть - самое то.
Можно правильно. Создается интерфейс, и к нему приводится loader.content. Обычно создается ещё один интерфейс - обьекта, через который будут идти всё общение. А интерфейс загруженой флэшки имеет одну единственную функцию - отдать этот обьект, через который будет идти общение потом.

Parez 04.11.2011 22:26

-De-, я ещё кое-что заметил. Когда я делаю trace(loader.content), выводится [object DocClass__Preloader__]. Я так понял, надо в настройках AS3 поставить custom preloader loop, но этого лучше не делать, т.к. у меня в приложении очень много TLF текстовых полей, а с ними оно не работает. Есть какие-нибудь ещё варианты?

p.s.
-De-, метод, который вы предложили не работает для роликов со встроенным прелоадером.

-De- 04.11.2011 22:36

У меня всё работает, что я делаю не так? (с)


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

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