在Android中从资源文件检索属性值的代码

在Android中从资源文件检索属性值的代码,android,Android,我有一个值资源文件(即Android Studio中的值)。代码如下: <resources> <string-array name="countrycaptital"> <item name="NewDelhi">India</item> <item name="Japan">Tokiyo</item> <item name="US">Washington

我有一个值资源文件(即Android Studio中的值)。代码如下:

<resources>
    <string-array name="countrycaptital">
        <item name="NewDelhi">India</item>
        <item name="Japan">Tokiyo</item>
        <item name="US">Washington</item>
<resources>

印度
当世
华盛顿
请指导我从这个XML数据文件(Android)中检索代码中的国家及其首都。

您可以这样做:

String[] CountryCaptital = context.getResources().getStringArray(R.array.countrycaptital);   
然后像访问任何java数组一样访问它。(注意你的名字中“国家首都”的拼写错误…)

编辑:

抱歉-我没有意识到您试图引用
项的属性。这是不可能的。从文档中:

一个字符串,可以包括样式标记。该值可以是 对另一个字符串资源的引用。一定是个孩子 元素。注意你必须避开撇号和 引号。有关信息,请参见下面的格式和样式 即将正确设置字符串的样式和格式

没有属性

例如,您可以创建两个长度相同的单独字符串数组,并在创建
HashMap
时将其中一个用作另一个的键

编辑:

两个类似这样的阵列:

<resources>
    <string-array name="capital">
        <item >New Delhi</item>
        <item >Tokyo</item>
        <item >Washington</item>
<resources>

新德里
东京
华盛顿
以及:


印度
日本
美国
String[]country=context.getResources().getStringArray(R.array.country);
String[]capital=context.getResources().getStringArray(R.array.capital);
然后创建一个
HashMap
,并使用
for
循环来填充它。

您可以这样做:

String[] CountryCaptital = context.getResources().getStringArray(R.array.countrycaptital);   
然后像访问任何java数组一样访问它。(注意你的名字中“国家首都”的拼写错误…)

编辑:

抱歉-我没有意识到您试图引用
项的属性。这是不可能的。从文档中:

一个字符串,可以包括样式标记。该值可以是 对另一个字符串资源的引用。一定是个孩子 元素。注意你必须避开撇号和 引号。有关信息,请参见下面的格式和样式 即将正确设置字符串的样式和格式

没有属性

例如,您可以创建两个长度相同的单独字符串数组,并在创建
HashMap
时将其中一个用作另一个的键

编辑:

两个类似这样的阵列:

<resources>
    <string-array name="capital">
        <item >New Delhi</item>
        <item >Tokyo</item>
        <item >Washington</item>
<resources>

新德里
东京
华盛顿
以及:


印度
日本
美国
String[]country=context.getResources().getStringArray(R.array.country);
String[]capital=context.getResources().getStringArray(R.array.capital);

然后创建一个
HashMap
,并使用
for
循环来填充它。

可能重复的Oops!很抱歉拼写错误…但此代码段仅返回国家名称(即XML文件中的值),而不返回作为属性的大写字母…:-(很抱歉我误解了你的问题!请看我编辑。谢谢Jim…非常有帮助…如果你能建议我任何其他方式来组织我的XML数据,然后检索属性值,那就太好了…请看我的编辑…我想这应该能帮到你。哎呀!很抱歉拼写错误…但是这个代码片段只返回m。)e国家名称(即XML文件中的值),而不是作为属性的大写字母…:-(很抱歉我误解了你的问题!请看我的编辑。谢谢Jim…非常有帮助…如果你能建议我任何其他方式来组织我的XML数据,然后检索属性值,那就太好了…请看我的编辑…我想这应该能帮到你。