2009-08-12 71 views
0

我有以下结构(在调试模式下观察时)的ArrayCollection:ArrayCollection的儿童返回null

[0] 
- [0] 
-- src 
- [1] 
-- src 

src为路径的图像。

我需要从arraycollection中取出所有的src。但由于第一个(未命名)节点,我不能让他们进来。

我试过ArrayCollection [0] .children并将结果保存在另一个ArrayCollection,但是新的ArrayCollection有2个对象,但没有'SRC'。只有2个空对象

firstArrayCollection如上所述填充数据。

secondArrayCollection.addItem(firstArrayCollection[0].children); 

观看secondArrayCollection的内容时,我看到下面的结构(和数据):

[0] null 
[1] null 

回答

2

尝试

var i:int = 0; 
var myNormalArray:Array = new Array(); 

//loop through collection 
for each (var child:* in myArrayCollection) 
{ 
    //do what you want with the child 
    myNormalArray[i++] = child; 
} 

这将让所有的对象从集合中成正常的数组,他们可以通过它们的索引来引用。如果你看一个数组集合,它没有长度的概念,所以索引不能成为一个索引,它必须是一个关键。

或只是这样做想着它(虽然我从来没有做过的话)

var myArray:Array = myArrayCollection.toArray(); 

希望这有助于

乔恩

// ********* *******************************

第二次尝试!!!!!!

var pathArray:Array = new Array(); 
var i:int = 0; 
for each (var child:* in myArrayCollection) 
{ 
    for each (var pathObject:Object in child) 
    { 
    pathArray[i++] = pathObject.src; 
    } 
} 

这应该工作,我还没有测试它虽然

+0

THX您的快速反应。我尝试了他们两个,但我只是得到一个与ArrayCollection具有相同结构的数组。因此,第一个[0]节点仍然阻止我使用它作为数据提供者 – Jozzeh 2009-08-12 20:24:58

+0

它们是对象与一个src proeprty或只是一个字符串与源或in关联数组与src作为关键和路径作为值? – Jon 2009-08-12 20:45:59

+0

此图像可能会使它更容易: http://img11.imageshack.us/img11/7578/afbeelding1k.png 我需要驻留在src下的数据(img/images/rekske.png < - example,真正的应用程序将有可变的图像) – Jozzeh 2009-08-12 21:12:10