我创建了一个函数,该函数将使用由 xml 生成的变量从我的库中添加一个子项。
var ChosenGraphic:String = units.unit.(@titel==k1).graphic;
var mc:MovieClip = new ChosenGraphic;
addChild(mc);
我知道我不能为此使用 :String ,但我不知道该使用什么。我现在正试图让它工作 2 个小时,这真的很令人沮丧。其他一切正常,我已经测试过了。
我创建了一个函数,该函数将使用由 xml 生成的变量从我的库中添加一个子项。
var ChosenGraphic:String = units.unit.(@titel==k1).graphic;
var mc:MovieClip = new ChosenGraphic;
addChild(mc);
我知道我不能为此使用 :String ,但我不知道该使用什么。我现在正试图让它工作 2 个小时,这真的很令人沮丧。其他一切正常,我已经测试过了。
您想使用getDefinitionByName()顶级函数。
下面是一个使用它的示例,直接从我链接到的文档中提取。请注意,类名字符串必须是完全限定的类名(即:它包括包名和类)。
package {
import flash.display.DisplayObject;
import flash.display.Sprite;
import flash.utils.getDefinitionByName;
public class GetDefinitionByNameExample extends Sprite {
private var bgColor:uint = 0xFFCC00;
private var size:uint = 80;
public function GetDefinitionByNameExample() {
var ClassReference:Class = getDefinitionByName("flash.display.Sprite") as Class;
var instance:Object = new ClassReference();
instance.graphics.beginFill(bgColor);
instance.graphics.drawRect(0, 0, size, size);
instance.graphics.endFill();
addChild(DisplayObject(instance));
}
}
}