0

我创建了一个函数,该函数将使用由 xml 生成的变量从我的库中添加一个子项。

var ChosenGraphic:String = units.unit.(@titel==k1).graphic;
var mc:MovieClip = new ChosenGraphic;
addChild(mc);

我知道我不能为此使用 :String ,但我不知道该使用什么。我现在正试图让它工作 2 个小时,这真的很令人沮丧。其他一切正常,我已经测试过了。

4

1 回答 1

0

您想使用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));
        }
    }
}
于 2013-02-13T17:14:23.880 回答