在运行时使用参数实例化加载的swf

时间:2013-07-02 08:28:27

标签: actionscript-3 class actionscript instantiation loader

我正在开发一个项目,该项目具有Master swf,可根据需要加载到子swf中。有没有办法加载这些子swfs,以便可以使用参数调用其文档类中的构造函数?

作为一个例子:

我有一个在运行时加载的子类,可以在其构造函数中给出一个对齐参数。

我在运行时将其作为一个类加载,并使用父,Master swf中的参数实例化它。

显然我可以在子实例中创建一个辅助'构造函数',在实例化后构建我想要的东西,我只想知道是否有办法管理加载的swfs的实例化,和/或将它们加载到类中而不是而不是显示对象。

1 个答案:

答案 0 :(得分:1)

加载的SWF已经是构造对象。使用AS3,您可以获取类名并实例化一个新对象:

在下面的函数中传入您想要“复制”的对象。它将获取类名并将其转换为类。然后,它将创建该类的新实例,您可以在其中传递一些参数

public function getClassObj(obj:*, constructorArgument:*):* {
    var objClass:Class = Class(getDefinitionByName(getQualifiedClassName(obj)));
    var tempObj:* = new objClass(constructorArgument);
    return tempObj;
}