2011-08-03 19 views
0

我想從包含許多數組的xml文件中的字符串數組讀取值。目前我正在使用它來導入數組。Android/Java:使用字符串作爲變量

String[] NEWARRAYNAME = getResources().getStringArray(R.array.ARRAYNAME); 

我想要做的是使用隨機數從我的文件中獲得一個隨機數組。我正在考慮將所有數組命名爲xml文檔:m1,m2,m3等,因爲我不能只使用一個數字(我試圖模擬一個數據庫標籤)。這是我目前正在做的事情來生成一個包含隨機數的字符串。

int i = random.nextInt(3)+ 1; 
String ID = "m" + Integer.toString(i); 

那麼如何使用字符串ID從我的xml文件中獲取數組。 使用GetResources()。getStringArray(R.array.ID)不起作用。

回答

0

您可以使用getIdentifier來獲得您從R得到的名稱的標識符。請注意,它比直接從R使用標識符要慢。您還可以將R中的ID放入數組中,並選擇一個從那個隨機。

+0

我對getIdentifier有點困惑。你能告訴我它將如何使用?我不確定它會做什麼來幫助我檢索一個數組而不是全部數組。我將擁有100個數組,並且只希望用getResources()獲取其中的一個。getStringArray – willmer

+0

getIdentifier有三個參數:要查找的資源的名稱(本例中爲「ID」),類型資源(因爲它是R.array.ID,類型是「數組」)和程序包名稱('context.getPackageName()')...它返回一個與R.array.ID相同的整數你可以在getStringArray()中使用這個整數() – Zharf

+0

對不起,很煩人,但是我該如何設置我的新數組? 我目前有: int j = getResources()。getIdentifier(ID,「array」,getPackageName()); \t String [] NEWARRAY = res.getStringArray(j); – willmer