具有适当语言代码的多语言资源



我想制作应用程序,它将支持语言的资源,具体取决于实际本地化和国家/地区代码。根据文档,我需要将资源更改为格式,即 values-en-rUS,并且在该配置应用程序中成功编译并在资源中设置了正确的标志图像,但我不知道应该在变量中写入Locale格式来更改资源。我尝试en_USen-rUSen-US但无法正常工作。在我以前的版本中,values-en更改应用程序语言的Localeen资源是否正确更新等资源。

values-en-rUS的语言环境可以通过new Locale("en", "US")获得,这将得到"en_US"语言环境的实例(匹配values-en-rUS(。

不要使用 new Locale("en_US") 这将产生"en_us"。这与values-en-rUS不符.new Locale("en-US")也行不通。

从 API 级别 21 开始,有方便的Locale.forLanguageTag(String)方法。它返回指定 IETF BCP 47 语言标记字符串的区域设置,在本例中为"en-US"。所以你可以使用 Locale.forLanguageTag("en-US) .

不完全确定您的要求,但是如果您想添加语言,则需要确实创建语言以创建写入文件夹,但格式为:<resource type>-b+<language code>[+<country code>] 例 : value-b+en+US

然后,您可以将每个文件夹中的strings.xml文件添加到要显示的内容中。您可以在此处找到所有文档。

最新更新