0

我有一个使用 gSkinner 的 swfBridge 加载 Flash 8 AS2 swf(客户端)的 Flash CS4 AS3 swf(主机)。

这很好用,主机可以在客户端调用函数没有问题。但是我希望能够在客户端调用一个函数并让该函数将一个数组返回给主机。

这是我认为可行的代码 -

主机 (AS3) 代码 -

var hostArray:Array = new Array();
hostArray = mySwfBridge.send("getArray");

客户端 (AS2) 代码

var theArray = new Array("item1, item2, item3);
function getArray() :Array {
    return theArray;
}

有任何想法吗?

4

1 回答 1

2

您面临的问题是LocalConnection(used by SwfBridge) 它是异步调用的。换句话说,调用者脚本的执行不会停止执行以等待被调用函数返回的结果。

如果您需要从另一侧检索值,则LocalConnection需要将其设置为双向工作。LocalConnection即,您的客户端脚本必须通过(SwfBridge在这种情况下)将其结果发送回主机对象上的回调方法,而不是通过执行此操作return

于 2009-05-23T01:31:42.837 回答