Проблема с изменением размера загрузчика после загрузки swf

Я использую следующий код для загрузки swf в чистый проект ActionScript (Flex Builder 3)

_loader = new Loader();

_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, Loader_Complete);
_loader.contentLoaderInfo.addEventListener(Event.INIT, Loader_Init);

var request:URLRequest = new URLRequest("Skins/TestSkin.swf");
_loader.load(request);

this.addChild(_loader);

Это работает нормально и отображает swf на сцене (по какой-то причине 500x375 - не знаю почему, TestSkin.swf - это гибкое приложение без определенной ширины и высоты)

Однако, когда я пытаюсь масштабировать swf так, чтобы он заполнял сцену, у меня возникают проблемы.

Я пытался:

  • Установка _loader.width и _loader.height в моем обработчике Loader_Complete
  • Установка _loader.width и _loader.height в моем обработчике Loader_Init
  • Установка _loader.content.width и loader.content.height в моем обработчике Loader_Complete
  • Установка _loader.content.width и loader.content.height в моем обработчике Loader_Init

Я видел в Интернете примеры, когда люди говорят, что это работает для них, но всякий раз, когда я устанавливаю ширину или высоту любым из этих способов, загруженный swf просто не отображается вообще.

Есть идеи, что могло быть причиной этого?

Как правильно изменить размер SWF-файла, загруженного с помощью объекта Loader?


person DanK    schedule 06.05.2010    source источник


Ответы (1)


Я нашел способ решения моей текущей проблемы.

Я могу добавить следующий обработчик событий в свой подчиненный SWF-файл:

public function AddedToStage():void
{
    this.width = this.stage.width;
    this.height = this.stage.height;
}

и прикрепите его к событию addedToStage приложения.

Тем не менее, я все же хотел бы знать, как установить размеры вспомогательного swf из родительского swf - могут быть случаи, когда у меня нет контроля над загруженным swf, поэтому я не могу добавить к нему этот код.

person DanK    schedule 06.05.2010
comment
есть ли шанс, что вы нашли способ установить размеры суб-SWF из родительского SWF? - person pullCommitRun; 10.08.2020
comment
У меня есть приложение Air в моей файловой системе, и я загружаю удаленный swf, размещенный на 'host: port / xxx /abc.swf '. Я тоже не умею. Кроме того, существует также проблема, заключающаяся в том, что файл swf теперь находится в собственном домене безопасности (а также в домене приложения ..), поэтому даже не уверен, возможно ли это из основного приложения. - person pullCommitRun; 10.08.2020