Android-如何从资源中获取名称?
我指的是名称,而不是它的值,例如:Android-如何从资源中获取名称?,android,Android,我指的是名称,而不是它的值,例如: <resources> <string name="magical_value_1">Lapin</string><br> <string name="magical_value_2">Poulet</string><br> <string name="magical_value_3">Saucisse</string><b
<resources>
<string name="magical_value_1">Lapin</string><br>
<string name="magical_value_2">Poulet</string><br>
<string name="magical_value_3">Saucisse</string><br>
</resources>
拉宾
小鸡
酸辣酱
如果我使用stringvalue1=getResources().getString(R.String.magical\u value\u 1)代码>
结果将是Lapin,但我需要一种方法来获取变量中的“magical\u value\u 1”
(不是Lapin)。我需要这样做是因为语言,我的应用程序中有很多语言,它们的值也会改变,但名称(神奇的值)是唯一剩下的(不管语言如何)。谢谢请参阅
tl;dnr:
getResources().getResourceEntryName(int resid);
<>你应该考虑一下Android开发者文档。 如果你正在尝试让你的应用程序支持多种语言。这里有一些简单的例子
假设您正在尝试制作支持法语和英语的应用程序。您需要为英语创建res/values/strings.xml(确切地说,是法国以外的其他语言),为法国创建res/values-fr/strings.xml
内部res/values fr/string.xml
<resources>
<string name="magical_value_1">Lapin</string><br>
<string name="magical_value_2">Poulet</string><br>
<string name="magical_value_3">Saucisse</string><br>
</resources>
拉宾
小鸡
酸辣酱
在res/values/string.xml中
<resources>
<string name="magical_value_1">Rabbit</string><br>
<string name="magical_value_2">Chicken</string><br>
<string name="magical_value_3">Sausage</string><br>
</resources>
兔子
鸡肉
香肠
通过更改设置上的设备语言来测试它 你读过关于支持不同语言的书吗?在我听来,你试图支持不同的语言,但却试图以错误的方式实现……在他的例子中,intresid
是做什么的?他在问如何将int值R.string.magical\u value\u 1转换成字符串“magical\u value\u 1”。这就是为什么我的答案是正确的!这就是我所做的,但我不确定当我改变一种不同于英语的语言时,这是不起作用的,但我现在已经解决了