Swfloader масштабирует содержимое до полного размера

У меня есть загруженный файл flash swf в мой гибкий проект.
Я использовал SWFLoader для загрузки файла swf.

var loader:SWFLoader = new SWFLoader();
loader.load("player/VideoPlayer.swf");
loader.width = 320;
loader.height = 280;
parentContainer.addElement(loader);

В котором parentContainer равно <s:BorderContainer. Его ширина 320 и высота 280.

Я также пытался установить, как показано ниже, но мне это не удалось:

function onComplete(event:Event):void
{
    loader.width = 320;
    loader.height = 280;
}

Проблема: но когда я запускаю его, SWF-файл загружается на полную ширину и высоту.
Как я могу установить его ширину и высоту для родительского контейнера?

Я также пробовал:

<s:BorderContainer id="parentContainer" width="320" height="280">

    <s:SWFLoader width="320" height="280" scaleContent="false" autoLoad="true"
                         source="@Embed(source='player/VideoPlayer.swf')"  />
</s:BorderContainer>

Но все равно потребуется 100% размер приложения. Размер приложения 600 X 500.

Изменить:

swfloader покрывают все приложение, а все остальные гибкие компоненты скрывают за swfloader


person ketan    schedule 28.12.2015    source источник


Ответы (1)


Из документации:

scaleContent Флаг, указывающий, следует ли масштабировать содержимое в соответствии с размером элемента управления или изменять его размер в соответствии с размером содержимого. Если true, содержимое масштабируется в соответствии с элементом управления SWFLoader. Если false, SWFLoader масштабируется в соответствии с содержимым.

Я не знаю, почему не работают, потому что значение по умолчанию для scaleContent true, попробуйте установить свойство:

<s:BorderContainer id="parentContainer" width="320" height="280">

    <s:SWFLoader width="320" height="280" scaleContent="true" autoLoad="true"
                     source="@Embed(source='player/VideoPlayer.swf')"  />
</s:BorderContainer>

Or:

var loader:SWFLoader = new SWFLoader();
loader.load("player/VideoPlayer.swf");
loader.width = 320;
loader.height = 280;
loader.scaleContent = true;
parentContainer.addElement(loader);
person ElChiniNet    schedule 28.12.2015
comment
swfloader охватывает все приложение, а все остальные гибкие компоненты скрываются рядом с swfloader. - person ketan; 29.12.2015
comment
Вы пробовали загрузить другой swf с такими же размерами? Возможно, проблема не в вашем коде, а в загруженном swf. - person ElChiniNet; 29.12.2015