2010-05-24 45 views
0

我是Android和Java的新手,並且希望編寫一個函數,該函數將顯示基於我傳遞給函數的變量的列表。傳遞變量字符串來創建數組(Android)

該函數在下面,下面的代碼從一個名爲type的字符串中創建一個數組,但我想要做的是將它傳遞給一個變量字符串,並讓它根據該字符串構建一個列表。

所以,如果我想要的類型列表中,我會說list_it("type")

但是,如果我嘗試像getResources().getStringArray(R.array.thelist);這是行不通的。

有人能指出我正確的方向嗎?

public void list_it(String thelist){ 
    String[] types = getResources().getStringArray(R.array.type); 
     ArrayAdapter<String> mAdapter = new ArrayAdapter<String>(this, R.layout.list_item1, types); 
     setListAdapter(mAdapter); 
     ListView lv = getListView(); 
     lv.setTextFilterEnabled(true); 
} 

回答

2

使用下面的代碼來獲取標識爲給定的名稱即的thelist:

int resID = getResources().getIdentifier(thelist, "string", "<package name>");

這將返回標識爲給定的資源名稱。然後使用

getResources().getStringArray(resID);

HTH!

+0

非常感謝,這工作得很好!由於我對此非常陌生,所以我不確定從何處獲取類型(「字符串」),然後從R.java中查找並從那裏獲取。如果有其他新手看到這個。再次感謝。 – shaneburgess 2010-05-24 06:07:17

+0

感謝男人你的小代碼幫助我很多。 – amity 2011-10-10 08:10:56