android为整个应用程序指定了语言环境

时间:2014-06-24 06:40:52

标签: android

我尝试的内容如下

final Locale locale = new Locale("en", "US");
        Locale.setDefault(locale);
        final Configuration config = new Configuration();
        config.locale = locale;
        getBaseContext().getResources().updateConfiguration(config,
                getBaseContext().getResources().getDisplayMetrics());

我想为整个应用程序设置一个特定的语言环境,我在Application类级别进行设置,但是上面给定的行似乎不起作用,因为我从日期选择器的设置更改Locale语言规范不具有应用程序类指定的语言环境的效果,并从设置语言规范中获取语言环境。

1 个答案:

答案 0 :(得分:1)

我不确定它是否可以在应用程序级别设置区域设置,因为我自己没有尝试过。

解决方法(我知道有效)是创建一个超级活动,例如MyActivity extends Activity。把代码

final Locale locale = new Locale("en", "US");
Locale.setDefault(locale);
final Configuration config = new Configuration();
config.locale = locale;
getBaseContext().getResources().updateConfiguration(config, getBaseContext().getResources().getDisplayMetrics());
在MyActivity的onCreate()方法中,让您的所有活动扩展MyActivity而不是Activity。