我要翻译我的应用程序strings.xml文件。哪个是strings.xml文件的默认语言?因为现在我需要支持意大利语(我现在写的是strings.xml的语言)和英语。我应该使用string.xml作为英语并创建
RES /值-它/
意大利语的文件夹,并用英语翻译“default”strings.xml?
答案 0 :(得分:14)
strings.xml
是默认设置,如果没有国家/地区特定文件,例如res/values-it/strings.xml
或res/values-fr/strings.xml
,则会使用
strings.xml
。详细了解Localizing with Resources。
我会亲自使用{{1}}英文翻译作为你已经建议的后备。
答案 1 :(得分:4)
看看here;如上所述:
创建区域设置目录和字符串文件
要添加对更多语言的支持,请在res /中创建其他值目录,其中包含连字符和目录名末尾的ISO国家/地区代码。例如,values-es /是包含语言代码" es"的Locales的简单resourcess的目录。 Android在运行时根据设备的区域设置加载适当的资源。
确定要支持的语言后,请创建资源子目录和字符串资源文件。例如:
MyProject/ res/ values/ strings.xml values-es/ strings.xml values-it/ strings.xml
将每个语言环境的字符串值添加到相应的文件中。
在运行时,Android系统根据当前为用户设备设置的区域设置使用适当的字符串资源集。
例如,以下是针对不同语言的一些不同的字符串资源文件。
英语(默认语言环境),/ values / strings.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="title">My Application</string>
<string name="hello_world">Hello World!</string>
</resources>
意大利语/values-it/strings.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="title">la mia domanda </string>
<string name="hello_world">ciao mondo!</string>
</resources>
注意:您可以在任何资源类型上使用区域设置限定符(或任何配置限定符),例如,如果您要提供位图drawable的本地化版本。有关更多信息,请参阅本地化。
答案 2 :(得分:0)
如果您只想拥有一个 strings.xml 文件,并且希望本地化为意大利语,那么您需要做的就是将以下行添加到您的 strings.xml 文件中。
<resources xmlns:tools="http://schemas.android.com/tools" tools:locale="it">
<块引用>
locale="it" -> 意大利语、locale="fr" -> 法语等