如何在Android项目中存储一些与语言无关的值,例如网站地址。我目前将其存储在strings.xml
内。这看起来不太好,好像我添加了另一种语言和翻译,这个条目仍然具有相同的值并将被复制。
我还想了解一下使用I18N创建Android项目的一些技巧。
答案 0 :(得分:5)
您无需再次在已翻译的xml文件中创建相同的密钥。如果Android在德语/西班牙语/无论什么语言文件中找不到link
,它将回退到默认string.xml
中存储的原始密钥。
我建议先实施英文版本,之后让有人翻译。
答案 1 :(得分:0)
对于i18n-format,您可以为一个本地创建一些资源文件夹:
/res/values <- default locale
/res/values-fr <- values for french locale
...
有关更多示例,请阅读文档:http://developer.android.com/guide/topics/resources/localization.html
答案 2 :(得分:0)
对于与语言无关的字符串,只需创建一个包含常量的类:
public class MyIndependentStrings {
public static final String SOME_STRING = "Value";
}
用法:
tvMyTextView.setText(MyIndependentStrings.SOME_STRING);
在这种情况下,您将使用常量,而不是来自../ values / strings.xml
的i18n字符串答案 3 :(得分:0)
尝试将语言无关的字符串放入:
\res\values-nodpi\strings.xml