![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Feb 2008
Сообщений: 5
|
Делаю подгрузку внешнего swf-файла:
public class program extends MovieClip { public static var loader:Loader public function program() { loader = new Loader(); var request:URLRequest = new URLRequest("path_to_file/auth.swf"); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, this.onComplete); loader.load(request); } public function onComplete (e:Event) { stage.addChild(loader); var target:MovieClip = e.target.content as MovieClip; trace (target.testVar); } } public class Auth extends MovieClip { public var testVar:String = "aaa"; public function Auth() {} } ReferenceError: Error #1069: Не удалось найти свойство testVar в main.Auth__Preloader__; отсутствует значение по умолчанию. at program/onComplete() При этом подгруженный ролик на сцену добавляется, но обратиться к его свойству не удается. За ранее, спасибо за помощь! |
|
|||||
|
Регистрация: Feb 2008
Сообщений: 5
|
in4core, это я понял...
Этот класс и еще ряд неизвестных классов генерируется при публикации, когда на сцене флешки есть какие-либо обьекты (через FlashDevelop смотрю список классов swf-файла). При этом нужного класса main.Auth там нет. |
|
|||||
|
Регистрация: Feb 2008
Сообщений: 5
|
Опубликовал клип в 9 версии Flash Player (ранее публиковал в 10). Теперь все работает!
Что не так с 10 плеером? |
|
|||||
|
.
|
Соглашусь с in4core. Не соображаю практически ничего в FD, но складывается впечатление, что DocumentClass у loadee есть main::Auth __Preloader__, а во втором его кадре инстанцируется main::Auth и добавляется на сцену. Что-то типа выбранного шаблонного проекта "AS3 Project with Preloader".
|
|
|||||
|
Регистрация: Apr 2011
Сообщений: 10
|
Хотелось бы поднять снова эту тему и до конца всё прояснить:
У меня ситуация аналогичная: есть родительский swf (Document class: Main), есть загружаемый swf (Document class: subMain). Код аналогичный тому, что указан в первом посте. Работаю во Flash CS5 Вылетает ровно то же исключение. И появляется тоже не понятный _PRELOADER_. В настройках проекта, меняю flash player с 10 на 9 -> всё работает. Далее в настройках AS3 увидел пункт: Preloader Method: Preloader SWF Preloader SWF:$(AppConfig)/ActionScript 3.0/rsls/loader_animation.swf Поменял Preloader Method на Custom preloader loop -> всё заработало в 10 flash player'е Может кто-нибудь прояснить эту опцию? Теперь второй момент: на скорую руку набросал два проекта с кодом ну совсем как в первом посте: фактически по 2 функции на каждый swf. Гружу один в другой, вызываю метод загруженного(или обращаюсь к его свойству) -> всё работает и с этими настройками, с которыми не работает сам проект. Отличие первого примера от второго только одно - в первом много экранных объектов на сцене, соответственно больший размер загружаемого файла, а во втором ничего нет. Пожалуйста, объясните в чем магия Добавлено через 1 час 31 минуту Да, и еще хотел дописать, что если в настройках всё того же AS3 выставить Default linkage: merged in code вместо Runtime Shared Library тоже всё работает |
![]() |
![]() |
Часовой пояс GMT +4, время: 02:09. |
|
|
« Предыдущая тема | Следующая тема » |
|
|