我想用动态变量创建一个新的AC实例,它是nca1,nca2等。如果没有使用硬编码变量名定义,可以在循环中做到这一点吗?
答案 0 :(得分:0)
我担心你在这里忽略了这一点,getDefinitionByName为你提供了一个类实例,你不能用这种方式创建一个带有动态名称的变量。
这是每次反射创建实例的方法:
var symbolClass: Class;
var s: ArrayCollection;
symbolClass = getDefinitionByName("mx.collections.ArrayCollection") as Class;
s = new symbolClass();
如果您不想拥有动态变量,最好查看Dictionary并使用它来保存您的值,使用字符串作为键。
修改强>
您现在已经删除了代码段,因此对于其他人来说,我的代码可能没有意义:但您至少知道我的意思。
循环中的动态变量是一个不同的问题 - 您仍然可以使用词典来保存数据,是的,您可以在循环中动态创建其内容。