[英]as3 - Access class attributes dynamically
public class SndFx
{
[Embed(source="Sounds/01.mp3")]
public static const s01:Class;
public static const s01s:Sound = new s01() as Sound;
[Embed(source="Sounds/02.mp3")]
public static const s02:Class;
public static const s02s:Sound = new s02() as Sound;
[etc...]
}
我可以動態訪問這些屬性嗎? 我有很多想播放的聲音,我想做這樣的事情:
SndFx["s"+numberStr+"s"].play();
我不確定這樣做的方法,盡管我不確定這實際上是不可能的。 但是,解決該問題的方法是使用具有典型靜態方法的單例來訪問實例。
SndFx.getInstance()['s'+numberStr+'s'].play();
不過,更好的方法是使用您的Sound對象填充數組,甚至是Flash Player 10 Vector,並使用該對象訪問對象。
SndFx.soundEffectsArray[parseInt(numberStr)].play();
這使您可以檢查所解析的整數是否超出范圍,等等。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.