所以我试图获得闪光灯的访问权限,但我一直收到这样的错误:
第271180行:调用可能未定义的方法LoaderInfo。
我尝试过将下面的代码放入我的类内外,但从我的推断来看,它似乎认为'LoaderInfo‘是另一个它不是的函数。
public function getFlashVars():Object {
var paramList:Object = LoaderInfo( this.root.loaderInfo ).parameters;
var myParam:String = paramList["myParam"];
return myParam;
}我怎么才能避开这一切?
Eli
发布于 2012-04-16 05:03:54
看来您忘了flash.display.LoaderInfo的进口了。
但是,您可能也可以忽略类型类型:
this.root.loaderInfo.parameters;
发布于 2012-04-16 03:15:49
从函数名称和返回类型之类的方面来看,您似乎正在尝试实现以下功能:
function getFlashVars():Object{
return root.loaderInfo.parameters;
}另外,这对你来说已经是一个静态的对象了。您实际上并不需要一个函数来获取这些参数。
至少不是上面那个。你可以将它们取为:
root.loaderInfo.parameters.myParam1
root.loaderInfo.parameters.myParam2
root.loaderInfo.parameters.myParam3
...发布于 2012-04-16 12:36:42
如果您想要一种优雅的使用闪光灯的方法,可以使用来自寺庙图书馆的寺庙图书馆。这个类是闪光灯的包装器,所以可以在没有舞台的地方访问它们。
您可以为每个for单独设置一个默认类型和一个类类型。结合FlashVarNames枚举类,您可以知道应用程序中使用了哪些闪光灯。
您应该在主文件中实例化/配置FlashVars一次。
package
{
import temple.data.flashvars.FlashVars;
import flash.text.TextField;
public class FlashVarsExample extends DocumentClassExample
{
private static const _LANGUAGE:String = 'language';
private static const _VERSION:String = 'version';
private static const _IS_DEMO:String = 'is_demo';
public function FlashVarsExample()
{
FlashVars.initialize(this.loaderInfo.parameters);
FlashVars.configureVar(_LANGUAGE, 'nl', String);
FlashVars.configureVar(_VERSION, 1, int);
FlashVars.configureVar(_IS_DEMO, true, Boolean);
var txt:TextField = new TextField();
txt.width = 550;
txt.height = 400;
this.addChild(txt);
trace('FlashVars.getValue(_LANGUAGE) : ' + FlashVars.getValue(_LANGUAGE) + "\n");
trace('FlashVars.getValue(_VERSION) : ' + FlashVars.getValue(_VERSION) + "\n");
trace('FlashVars.getValue(_IS_DEMO) : ' + FlashVars.getValue(_IS_DEMO) + "\n");
trace(FlashVars.dump());
}
}
}https://stackoverflow.com/questions/10167177
复制相似问题