使用一个getStringArray调用不同的String数组

时间:2015-10-27 11:52:06

标签: android xml string

在strings.xml文件中有几个String数组,例如:

<string-array name="T1"> //demolitionHammers
    <item>Makita HM1200K</item>
    <item>Makita HM1202C</item>
    <item>Bosch GSH 5E</item>
    <item>Bosch GBH 11DE</item>
</string-array>

<string-array name="T2"> //diamondDrills
    <item>Makita DBM080</item>
    <item>Bronco BDD150A</item>
</string-array>

<string-array name="T3"> //groundDenser
    <item>Shatal PC2016</item>
</string-array>

在Java文件中,我有一个字符串变量,例如所需数组的名称(想要的数组将根据其他活动确定,每次都不同):

String strName = "T2";

问题是我现在无法使用以下调用来获取特定的String-array:

String[] selectedSubList = res.getStringArray(R.array.strName);

如何做到这一点?

1 个答案:

答案 0 :(得分:1)

您可以使用getIdentifier()方法

Resources res = context.getResources();
int resId = res.getIdentifier(strName, "array",context.getPackageName());
String[] selectedSubList = res.getStringArray(resId);