2

我有一个 OpenLaszlo/AS3 应用程序 (olapp.lzx) 和一个 Flex 应用程序 (flexapp.swc)。我想在 olapp.lzx 中包含 flexapp.swc,如下所示:

olapp.lzx (AS3):
===============
...
var flexapp:Sprite = new FlexApp();
flexapp.doSomething();
...

flexapp.swc 是从这个 mxml 编译的:

flexapp.mxml:
============
<?xml version="1.0"?>
<!-- intro/FlexApp.mxml -->
<mx:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
    xmlns:s="library://ns.adobe.com/flex/spark"
    xmlns:mx="library://ns.adobe.com/flex/mx">
    <mx:ComboBox>
        <mx:dataProvider>
            <s:ArrayList>
                <fx:String>AK</fx:String>
                <fx:String>AL</fx:String>
                <!-- Add all other states. -->
            </s:ArrayList>
        </mx:dataProvider>
    </mx:ComboBox>
</mx:Application>

当我将 flexapp.mxml 编译为 swf 时,它运行良好,但从 AS3 实例化失败(TypeError:错误 #2007)。我研究了 mxml->as3 集成不是通常的方法,但对于这种特殊情况,我需要这样做。我不得不承认我对 Flex 还不是很熟悉,只有 OpenLaszlo。flexapp.mxml 中应该改变什么?谢谢!

4

1 回答 1

0

OpenLaszlo 不正式支持将 Flash SWF 应用程序导入其中。唯一的例外是编码为 SWF 格式的电影。

(如果您的应用程序使用 Flash 9 (SWF9) 或更高版本,则 SWF 影片需要以 AVM2 格式编码,对于 Flash 8 或更低版本,则需要 AVM1 编解码器)。

如果您尝试将不是简单 SWF 影片的 SWF 加载到 OpenLaszlo <view> 中,那么结果将是不可预知的。

于 2012-08-21T19:14:40.537 回答