繁体   English   中英

加载swf后调整加载程序大小时出现问题

[英]Problem resizing loader after loading swf

我正在使用以下代码在纯ActionScript项目(Flex Builder 3)中加载swf

_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是没有定义宽度和高度的Flex应用程序)

但是,当我尝试缩放swf以使其充满舞台时,我遇到了问题。

我努力了:

  • 在我的Loader_Complete处理程序中设置_loader.width和_loader.height
  • 在我的Loader_Init处理程序中设置_loader.width和_loader.height
  • 在我的Loader_Complete处理程序中设置_loader.content.width和loader.content.height
  • 在我的Loader_Init处理程序中设置_loader.content.width和loader.content.height

我在网上看到了一些例子,人们说这些对他们有用,但是每当我以任何这些方式设置宽度或高度时,根本不会显示加载的swf。

知道是什么原因造成的吗?

调整已加载Loader对象的swf大小的正确方法是什么?

我已经找到解决当前问题的方法。

我可以将以下事件处理程序添加到子swf中:

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

并将其附加到应用程序的createdToStage事件。

但是,我仍然想知道如何从父SWF设置子SWF的尺寸-有时我无法控制已加载的SWF,因此无法向其中添加此代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM