Swfloader将内容缩放到完整大小

时间:2015-12-28 10:46:54

标签: actionscript-3 flex swfloader

我已将flash swf文件加载到我的flex项目中。
我使用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

旁边

1 个答案:

答案 0 :(得分:0)

来自文档:

  

<强> 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>

或者:

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