从XML资源文件中获取所有字符串资源?

时间:2015-06-11 07:34:30

标签: android xml android-resources

我有一个名为suggestions.xml的资源文件,它被翻译成几种语言。这些XML文件仅包含<string>个值。

现在,我想检索当前语言环境的suggestions.xml文件中的所有字符串。我怎么做?我知道我可以通过他们的ID检索单个字符串,但我想在XML文件中获取所有字符串。

2 个答案:

答案 0 :(得分:4)

我想知道你为什么要这样做。不过,您仍然可以使用生成的R类来迭代所有类型的资源。

Field[] fields = R.string.class.getFields();
String[] stringNames = new String[fields.length];
for (int  i = 0; i < fields.length; i++) {           
    stringNames[i] = fields[i].getName();
}

答案 1 :(得分:1)

你可以像这样声明你的字符串。

 <string-array name="fruitcategory_array">

    <item>Apple</item>
    <item>Bananas</item>
    <item>Mangoes</item>
    <item>Grapes</item>
    <item>Other</item>

 </string-array>

在您的活动课程中,您可以像访问以下内容一样访问它们。

String[] categories;

categories=getResources().getStringArray(R.array.fruitcategory_array);

只需将您的本地字符串存储在Array文件中的suggestions.xml