flex3 kullanarak Array HierarchicalCollectionView dönüştürmek nasıl?

1 Cevap php

i HierarchicalData olarak dataProvider önceden datagrid kullanılır. bir benim dizi koleksiyonu strature bulunuyor

private var groupList:ArrayCollection = new ArrayCollection([
               {Country:'India', children:[
                               {Matches:'India Test series 1',isEnable:false},
                               {Matches:'India Test series 2',isEnable:false},
                               {Matches:'India Test series 3',isEnable:false}]},
               {Country:'Australia', children:[
                               {Matches:'Australia Test series 1',isEnable:false},
                               {Matches:'Australia Test series 2',isEnable:false},
                               {Matches:'Australia Test series 3',isEnable:false}]},
               {Country:'japan', children:[
                               {Matches:'Australia Test series 1',isEnable:false},
                               {Matches:'Australia Test series 2',isEnable:false},
                               {Matches:'Australia Test series 3',isEnable:false}]},
              
            ]);

i karşılaşmalar detayları gibi belirli veri almak ve bir (isEnable == true) değer olduğunu saymak istiyorum. şöyle Dizisine HierarchicalCollectionView dönüştürmek

var hCollView:HierarchicalCollectionView = updategrid.dataProvider as HierarchicalCollectionView;

        var hCollData:HierarchicalData = hCollView.source  as HierarchicalData;

        var hArrayColl:ArrayCollection =  hCollData.source as ArrayCollection;

        var hArray:Array = hArrayColl.source as Array;


        for(var i:Number=0;i<hArray.length;i++)
     {


        Alert.show(hArray[i].Country);




        if(hArray[i].isEnable=="true")
        {
    			    count1++;

        }


       }

Sadece ülke ayrıntılarını gösterir ama sonuç çalıştı ve isEnable dizide bulunmazsa eğer. Nasıl bulunabilir isEnable ve ayrıntıları maçlar? Bana bakın

1 Cevap

Hala sadece döngü içinde üst düzey çocukları test ediyoruz. Bunu değiştirmek,

for( var i : Number = 0; i < hArray.length; i++ ) {
    Alert.show( hArray[i].Country );
    for each ( match : Object in hArray[i].children ) {
        if ( match.isEnable ) {
            count1++;
        }
    }
}

Bu şekilde, maç nesneleri ulaşmak için üst düzey nesnelerin her biri çocukları döngü vardır.

Muhtemelen Ülke ve Maç nesneler hem de yazdığınız bir nesne, çok daha kolay bu tür davranış saklanması mümkün olacak yapma hakkında düşünmek gerekir.