我有一个瑞士法郎,我称之为
/SWFUploader/upload.swf?single=true
然后在 ActionScript 3 中我读入了值。但它不起作用。这是我的测试代码(第一 block 取自 http://blogs.adobe.com/pdehaan/2006/07/using_flashvars_with_actionscr.html ):
var keyStr:String;
var valueStr:String;
var paramObj:Object = LoaderInfo(this.root.loaderInfo).parameters;
for (keyStr in paramObj) {
valueStr = String(paramObj[keyStr]);
trace(keyStr + " = " + valueStr);
}
var isSingle:Boolean = this.loaderInfo.parameters.single as Boolean;
var isSingle1:Boolean = this.loaderInfo.parameters['single'] as Boolean;
var isSingle2:Boolean = LoaderInfo(this.root.loaderInfo).parameters['single'] as Boolean;
var isSingle3:Boolean = LoaderInfo(this.root.loaderInfo).parameters.single as Boolean;
trace(isSingle + ", " + isSingle1 + ", " + isSingle2 + ", " + isSingle3);
令人沮丧的是,这是跟踪的结果两条线:
single = true
false, false, false, false
我做错了什么?
最佳答案
在 ActionScript 中,非空且非空字符串被转换为 bool 值 true
。
var singleStr:String = this.loaderInfo.parameters.single;
var singleBool:Boolean = singleStr == "true";
关于actionscript-3 - 获取 swf bool 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9017542/