忽略手机的区域设置并始终使用英语作为区域设置

时间:2018-02-23 14:18:17

标签: android

有没有办法强制使用英语作为我的Android应用程序的语言环境,即使手机的语言环境是其他英语的东西?我想这样做的原因是我不希望我的UI将orientatoin从ltr更改为rtl。

1 个答案:

答案 0 :(得分:0)

这一行

mStrLocale = Locale.getDefault().getLanguage();

将返回您当前的语言,让我们说EN-US

用这个你可以硬编码你的语言环境

Locale locale = new Locale("ru");
Locale.setDefault(locale);
Configuration config = getBaseContext().getResources().getConfiguration();
config.locale = locale;
getBaseContext().getResources().updateConfiguration(config,
      getBaseContext().getResources().getDisplayMetrics());

我们因此而使用Configuration

  

此类描述可以的所有设备配置信息   影响应用程序检索的资源。这包括两者   用户指定的配置选项(区域设置列表和缩放)   作为设备配置(例如输入模式,屏幕尺寸和屏幕)   取向)。

在此文档https://developer.android.com/reference/android/content/res/Configuration.html

中说明