繁体   English   中英

检测Android中加载的本地化资源

[英]Detect loaded localized resource in Android

我的项目中有strings.xml,strings-es.xml和strings-ca.xml。 我如何知道为字符串加载了哪个文件? 注意:我不想要操作系统语言。

编辑:如果我的设备区域设置是意大利语,我想返回英语,因为我的应用程序没有翻译成意大利语。

我不认为有任何直接的apis。 解决方法可以是,在每个xml文件中都有一个字符串资源,这个字符串资源可以解释加载了哪个资源。

例如,

<string name="language">English</string>

在strings-es.xml文件中,您可以拥有

<string name="language">espanol</string>

在代码中,您可以检查此字符串的值以了解当前加载的语言。

但是,android会根据操作系统语言加载相应的xml文件。 因此,您只需检查相应的OS语言即可知道加载了哪个XML文件。 这可以通过Locale.getDefault().getDisplayLanguage(); .getDisplayLanguage Locale.getDefault().getDisplayLanguage();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM