2013-04-05 71 views
0

现在在我的应用程序中,我已经使用ObjectUtil.copy来复制数组集合。最近我们对应用程序进行了很多更改,并开始打破我的任何复制命令。我原本以为这是由于数组中的自定义类,但通过测试空的或简单的ArrayCollections来排除这一点。ObjectUtil.copy将不会复制任何ArrayCollection

这些都不都会为我工作:

var a:ArrayCollection = ObjectUtil.copy(new ArrayCollection()); 
newWindow.months = ObjectUtil.copy(months) as ArrayCollection; 

在第二行中,newWindow仅仅是一个新的画布我会用“月”属性和几个月显示是唯一字符串的ArrayCollection在里面。

在.copy()函数中,它打破了buffer.writeObject(value);并引发此错误'ArgumentError:Error#2004:其中一个参数无效。'

+0

你切换的Flex SDK版本? – RIAstar 2013-04-06 19:42:14

回答

0

复制源阵列

newWindow.months = new ArrayCollection(ObjectUtil.copy(months.source) as Array); 
+0

我会试试看。我很困惑,为什么我不能做一个ArrayCollection的副本。我之前没有遇到过问题,并且有大量的例子可以在线工作。 – 2013-04-05 21:17:20