我一直在努力使AS2 SWF正确加载到AS3 SWF中-但无济于事...

在Flash Player中启动时,AS2文件(这是一个很大的应用程序,引用了许多外部xml文件等)。

当尝试通过AS3 SWF(使用URLRequest和Loader类)加载同一文件时,该文件开始加载,但在预加载阶段突然停止。(如果我尝试使用AS2“ loadMovie”加载它,也会发生同样的情况。)

更新:似乎瑞士法郎实际上是通过AS2 loadMovie而不是AS3 Loader类加载的。

还有什么可以尝试的?安全设置,自定义加载程序类-任何建议,我们将不胜感激。

有帮助吗?

解决方案

还请记住,加载到AS3 SWF中的AS2 SWF将无法与其父SWF通信,因此,加载程序将无法跟踪SWF的加载-因此可能会引起问题。您应该构建在AS2中执行加载的SWF文件,然后使用LocalConnection将其连接到AS3 SWF文件。

其他提示

通常,必须将已加载的电影设计为从其他swf加载。例如,任何初始化代码都必须位于Event.ADDED_TO_STAGE事件发生之后,并且对根的所有引用均无法按您期望的那样工作。例如,某个元素的根是单独运行swf的阶段,但是当swf从另一个swf加载时,根是父swf,其大小和位置可能会有所不同。

在您的AS2代码中,请确保将lockroot(或者是_lockroot?)设置为true。另外,如果您在任何地方的AS2代码中都使用_level0,它将无法正常工作,则需要将其更改为_root。

选中这个。

  1. 在frame2中制作一个AS2容器以加载您的AS2 APP;
  2. 将容器加载到AS3动画中。
  3. 通过LocalConnection进行这些通信。

    将所有AS2 APP类导出到第2帧(在发布设置中)。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top