AS3 iOS:加载外部swf

时间:2013-03-19 13:44:04

标签: ios actionscript-3 air

我正在尝试使用AIR3.6在另一个中加载swf。 我复制了我在http://blogs.adobe.com/airodynamics/2012/11/09/packaging-and-loading-multiple-swfs-in-air-apps-on-ios/找到的代码但是徒劳无功。它不起作用。 所以我认为我不理解程序的一部分。

我所做的:

•我有第一个可以正确发布iOS版本的文章。

•在这篇文章中我有这段代码:

        var mLoader:Loader = new Loader();
        var mRequest:URLRequest = new URLRequest("test.swf");
        var _lc:LoaderContext = new LoaderContext(false, ApplicationDomain.currentDomain, null);
        mLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onCompleteHandler);

        mLoader.load(mRequest);
        function onCompleteHandler(loadEvent:Event)
        {
            addChild(loadEvent.currentTarget.content);
        }

•在发布设置中,我转到了常规选项卡,我包含了第二个swf:test.swf

•第二个swf(test.swf)。我用AIR 3.6 for iOS发布了它。 它完全没有动作。它只有一个绿色的形状。

•当我测试我的第一个fla时,第二个fla正确加载。

•当我在iPad上发布时,第二个swf未加载。

有人能告诉我哪里错了吗?

感谢。

1 个答案:

答案 0 :(得分:3)

好吧,在发布我的问题10秒后,我找到了解决方案。 我只是忘了将_lc:LoaderContext放在mLoader.load()中。 所以就是这样:

    var mLoader:Loader = new Loader();
    var mRequest:URLRequest = new URLRequest("test.swf");
    var _lc:LoaderContext = new LoaderContext(false, ApplicationDomain.currentDomain, null);
    mLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onCompleteHandler);

    mLoader.load(mRequest, _lc);
    function onCompleteHandler(loadEvent:Event)
    {
        addChild(loadEvent.currentTarget.content);
    }

版主注意:不确定这对任何人都有帮助,但我不知道如何删除帖子。