我在 Flash 中有这个功能:
public function checkFile(file:String):Boolean{
var b:Boolean;
var responder:Responder = new Responder(function(reply:Boolean):void{
b=reply;
msg("vid_"+file+".flv "+ "exists? " + reply);
setState("ready");
status = "ready";
},
function(res:Object):void{
trace("checkFile call failed");
});
mync.call("checkFile",responder,"vid_"+file);
return b;
}
我可以确认该reply
变量为真,但return b
最终为假:
这是我用来调用 flash 函数的 javascript:
function checkFile(){
alert(thisMovie("vidRecorder").checkFile(currentVid));
}
这会打开一个消息框说false
,而闪存文件显示true
这是怎么回事?如何修复它以便我的函数返回与 相同的值reply
?