2012-07-21 6 views
6
static public const CONST_1 :String = "CONST_1"; 
static public const CONST_A :String = "CONST_A"; 

public var constantsArr :Array; 

は次のように手動で追加することなく、クラスの定数値の配列を取得することが可能です:AS3 - クラスの定数の配列を取得するにはどうすればよいですか?

constantsArr = [ CONST_1, CONST_A ]; 
+0

可能重複します。http:// stackoverflow.com/questions/3871576/how-can-i-list-all-the-const-properties-defined-in-a-class – loxxy

答えて

14

ことが可能なはずdescribeTypeを使用する:

public class Constants 
{ 
    static public const CONST_1 :String = "CONST_1"; 
    static public const CONST_A :String = "CONST_A"; 
} 

var xmlList:XMLList = describeType(Constants).child("constant"); 

var constantsArray:Array = []; 
for each(var key:XML in xmlList) 
{ 
    constantsArray.push(key.attribute("name")); 
} 
+1

これは素晴らしいです!迅速な回答に感謝します。 –

+1

あなたは大歓迎です! –

関連する問題