2011-07-25 22 views
-1

私が曲がるように新しい、私は、以下に示すクラスを持っている:オブジェクトのArrayCollectionを作成するには?

public class Items extends Object 
{ 
    public function Items(){ 
     super(); 
    } 

    public var name:String; 
    public var count:int; 
} 

にはどうすれ型アイテムのArrayCollectionのを作成するのですか?

ありがとうございました。

+0

StringのArrayCollectionを作成する方法は? –

答えて

3
var item1:Items = new Items(); 
item1.name = "Name1"; 
item1.count = 5; 

var item2:Items = new Items(); 
item2.name = "Name2"; 
item2.count = 7; 

var items:ArrayCollection = new ArrayCollection([item1, item2]); 

もう一つの方法:あなたのコードのどこかで

var items:ArrayCollection = new ArrayCollection(); 

var item1:Items = new Items(); 
item1.name = "Name1"; 
item1.count = 5; 
items.addItem(item1); 

var item2:Items = new Items(); 
item2.name = "Name2"; 
item2.count = 7; 
items.addItem(item2); 
1

:それはArrayCollectionsがベクトルであってもよいことと同じ方法で入力されていない価値が何もないかもしれない

var ac : ArrayCollection = new ArrayCollection(); 
var newItem : Items = new Items(); 
newItem.name = 'some value'; 
newItem.count = 1; 
ac.addItem(newItem); 
newItem = new Items(); 
newItem.name = 'some other value'; 
newItem.count = 2; 
ac.addItem(newItem); 
newItem = new Items(); 
newItem.name = 'Yet another value'; 
newItem.count = 3; 
ac.addItem(newItem); 
... 

ので、コレクション内のすべてのアイテムをItemsタイプにすることはできません。 [ArrayCollectionを何とか拡張して、addItem/addItemAtメソッドをオーバーライドして、タイプが間違っているとエラーをスローする場合を除きます。

2

(あなたはフレックス4を使用している場合の内側)また、そのIDによって配列を参照するMXMLで

<s:ArrayCollection id="theCollection"> 
    <namespace:Items name="name 1" count="5" /> 
    <namespace:Items name="name 2" count="6" /> 
    <namespace:Items name="name 3" count="7" /> 
    <namespace:Items name="name 4" count="8" /> 
</s:ArrayCollection> 

をこれらを作成することができます。

関連する問題