2011-05-13 10 views
0

私は様々なプロパティを持つムービークリップ(バンドメンバーを表す)の配列を持っています。その中にバンドメンバーが現在のバンドを離れた後にどこに行ったかを示すプロパティがあります。新しいグループを結成した人たちのために、私は配列を作成したい。その配列内で、私は同じグループのために残っているものすべてをセカンダリ配列にグループ化したいと思います。バンドメンバーが5人いて、2人がXグループに、3人がYグループに残っています。これを行うにはどうすればよいですか?これは私のコード、大体、次のとおりです。flash as3多次元配列を作成する最良の方法

代わりに私はすべてのメンバーによる多次元配列とちょうどループなしで行うと言うことができるならば、私が思う
var newGroupArr:Array = new Array() //this will hold all members leaving for a new group 

for (k=0;k<memberClips.length;k++){ 
    if (memberClips[k].outcome == "new"){ 
     //for all groups where memberClips[k].group is the same, create a new array within newGroupArr for those similar members. 
    } 
} 

- そのグループと同じであるそれらのメンバーのために、この機能を実行すると、同じグループの名前が関数のパラメータとして渡されます。私が抱える問題は、誰が同じであるかを特定することだと思います。 AS3を使用して

This illustration shows the problem I'm having - if John Wetton is clicked, a line should be drawn only for him. But instead, a line is drawn for both he, david cross, and bill bruford, because they are all leaving for a new group. But david cross and bill bruford are actually going to a different group than john, so I need to make sure they are stored as members leaving for a new group, but I also need them grouped by the new band they are leaving for.

+0

do iu a)バンド名によるメンバーのリスト、b)人名で演奏されたバンドのリスト、のリストに簡単にアクセスするためのデータ構造を作成する必要があります。 – www0z0k

+0

本当にそうではありません - それはそれよりもさらに簡単です。私は一種の家系図を描いています。新しいグループAに向かうすべてのバンドメンバーが古いグループから新しいグループに引き抜かれ、新しいグループBに行くすべてのバンドメンバーがラインを持っていることを確認するだけです古いグループから新しいグループに引き出される。 – mheavers

+0

それはどのように表示されるのを見るのに役立つかもしれません。どのようにグループ分けしたいのか分かりましたが、多次元配列の必要はありません。これを処理する方法は、履歴スタックを持つバンドメンバークラスを持つことです。私は誰かが一度に複数のバンドにいる可能性があります。スタックのように単純ではないかもしれませんが、単純なツリーになる可能性があります。私はちょうど私のために、歴史はバンドというより人とより自然に関連していると言っています。 –

答えて

1

を見てバンド内の各配列には、前のバンドを残したメンバーが含まれます。

0

、あなた配列を使用する必要、私はそう

var bands:Dicionary = new Dictionary(); 

for (k=0;k<memberClips.length;k++){ 
    if(memberClips[k].outcome=="new"){ 
     var newGroup:String = memberClips[k].group; 
     if(!bands[newGroup]){ 
      bands[newGroup] = new Array(); 
     } 
     bands[newGroup].push(k); 
    } 
} 

のように、辞書を使用したい理由があるのない限り http://livedocs.adobe.com/flex/3/html/help.html?content=10_Lists_of_data_5.html

+0

ありがとう - 私は配列を作成する方法を知っている - 私はちょうど同じ値を持つクリップだけが適切なセカンダリ配列にプッシュされる方法で作成する方法がわからない。 – mheavers

関連する問題