这是一个非常简单的查询。 我在库中有一堆MovieClip,设置为ActionScript导出如下:
Overlay_1
Overlay_2
Overlay_3
...
...
...
可能有更多,他们的名字可能是任何东西(例如,不是数字上升)。
目前,要将这些MovieClip中的一个添加到舞台中,我将使用以下脚本:
var overlay_1:Overlay_1 = new Overlay_1();
addChild(overlay_1);
这个问题我想用字符串设置一个变量,让我们说" Overlay_6"然后将具有该导出名称的库中的MovieClip添加到舞台。
例如:
var overlayToAdd:String = "Overlay_6";
var overlayCotent:this[overlayToAdd] = new this[overlayToAdd+"()"];
addChild(overlayCotent);
最终的结果是,我设置变量' overlayToAdd'从库中挑出并添加到舞台中的内容。
如果有人可以帮助我,那么感激!然后,我可以自由设置' overlayToAdd'变量到数组的值,或者我想要的!
在过去(AS2)中,我会使用一个eval函数,但现在已经消失了。
答案 0 :(得分:0)
我解决了! 好的,所以我的解决方案如下,希望这有助于其他人!
var overlayName:String;
var overlayClass:Class;
var overlaySprite:Sprite;
overlayName="Overlay_1"; //This can be set by pretty much anything like an array value etc.
overlayClass=getDefinitionByName(overlayName) as Class;
overlaySprite=new overlayClass();
addChild(overlaySprite);