使用不同的名称创建arraycollection

时间:2011-05-14 11:02:16

标签: flex actionscript

我想用动态变量创建一个新的AC实例,它是nca1,nca2等。如果没有使用硬编码变量名定义,可以在循环中做到这一点吗?

1 个答案:

答案 0 :(得分:0)

我担心你在这里忽略了这一点,getDefinitionByName为你提供了一个类实例,你不能用这种方式创建一个带有动态名称的变量。

这是每次反射创建实例的方法:

var symbolClass: Class;
var s: ArrayCollection;

symbolClass = getDefinitionByName("mx.collections.ArrayCollection") as Class;
s = new symbolClass();

如果您不想拥有动态变量,最好查看Dictionary并使用它来保存您的值,使用字符串作为键。

修改

您现在已经删除了代码段,因此对于其他人来说,我的代码可能没有意义:但您至少知道我的意思。

循环中的动态变量是一个不同的问题 - 您仍然可以使用词典来保存数据,是的,您可以在循环中动态创建其内容。