Просмотр полной версии : Работа с внешним swf файлом
Есть внешний swf со свойствами и методами. Мне надо его загрузить и иметь возможность юзать эти свойства и методы.
Делаю так:
loader = new Loader();
loader.addEventListener(Event.COMPLETE, onLoadComplete);
loader.load(new URLRequest("recipient.swf"));
}
private function onLoadComplete(e:Event):void
{
trace(loader.content.variable1);
loader.content.traceAString();
}
Ругается на неизвестные ему свойство и метод variable1 и traceAString();
Что не так?
Ругается на неизвестные ему свойство и метод variable1 и traceAString();
А они ему известны?
Нужно привести загруженный контент к нужному типу.
Если это, например, CustomClass, то нужно сделать так:
trace((loader.content as CustomClass).variable1);
Но я обычно юзаю для таких целей интерфейсы
+ Разрешить загружающему файлу доступ к загружаемому, через Security.allowDomain("*"); (для всех доменов, в данном случае)
Возможно я неправильно выразился... Мне нужен вот такой вот прием:
http://help.adobe.com/ru_RU/FlashPlatform/reference/actionscript/3/flash/system/Security.html?filter_flex=4.1&filter_flashplayer=10.2&filter_air=2.6#allowDomain()
Блин, сразу не заметил этого:
loader.addEventListener(Event.COMPLETE, onLoadComplete);
Обработчик тут вообще не должен срабатывать. Слушатель нужно добавлять не к самому объекту лодер, а так:
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoadComplete);
Так как же все-таки "прочесть" какое нить свойство загруженного swf? Я не имею ввиду стандартные свойства MovieClip'а, а динамическое свойство?
загруженный клип
class Main
....
public var jjj:int = 111; // читается
public function getDate():Date .... // читается
Что для этого пишите в классе, который читает?
Это не ответ? (http://www.flasher.ru/forum/showpost.php?p=1039884&postcount=2)
Все отлично читается.
Ок Понял, спасибо! А если мне нужно достать символ из загруженной свфки, который находится в либе?
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.