2013-06-21 82 views
0

我有一個2D陣列如下:如何陣列2D轉換成陣列集合中的Flex

Asia India Chennai TN Category1 Product1 100 
Asia India Mumbai MH Category1 Product1 100 
Asia India Calcutta CT Category1 Product1 100 
Asia India Calcutta CT Category2 Product2 200 
EMEA UK  London LN Category3 Product1 123  
EMEA UK  London LN Category3 Product2 455  
EMEA UK  Reading RN Category1 Product1 500  
EMEA UK  Reading RN Category1 Product2 430 

如何可以在上述二維數組轉換爲陣列收集,這樣我可以訪問與像個人屬性的每個數據第一列表示屬性爲「continent」,第二列爲「country」等,arrayCollection的結構爲{Continent:「Asia」,Country:「India」,... etc)等等。如何實現它動態地。

回答

0
private var a:Array=new Array([100,200,300,40],[252,25,25,32]); 
private var a1:Array=new Array(); 
[Bindable] 
private var ac:ArrayCollection=new ArrayCollection(); 
private function init():void 
{ 
for(var i:int=0;i<a.length;i++) 
{ 
    a1[i]=new Array() 
    for(var j:int=0;j<a[i].length;j++) 
    { 
    a1[i]["col"+j]=a[i][j]; 
    } 
} 
ac.source=a1; 

ac.refresh() 
Alert.show(ac.toString()); 
}