让我们举一个我要实现的目标的简单示例。
我正在通过WS接收文本及其语言。我想向用户显示,例如:“此文本为西班牙语”。为此,我正在使用“%s中的文本”之类的资源。此资源将作为应用程序的其余部分翻译为其他语言。
我想将“西班牙语”翻译成与“此文本在%s中”资源相同的语言环境。
据我了解,Locale.getDefault()
返回了用户的主要Locale
,但是我的应用可能没有将此资源翻译成该Locale
的资源,但确实将其翻译成该用户的资源/她的第二个Locale
。
因此,我需要用于给定文本资源的Locale
。在以下示例中,我需要知道resourcesLocale
:
context.getString(R.string.textIn,apiLocale.getDisplayLanguage(resourcesLocale))