Проблема изменения размера загрузчика после загрузки SWF - PullRequest
1 голос
/ 06 мая 2010

Я использую следующий код для загрузки 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?

1 Ответ

1 голос
/ 06 мая 2010

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

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

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

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

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

...