更改活动的语言,使其也能反映以前创建的活动

时间:2019-07-18 10:20:37

标签: android localization

我正在使用两个按钮来更改应用程序中的语言。有两个活动,并且两个活动都有语言更改按钮。

问题是,当我从第一个活动转到第二个活动然后更改语言时,第一个仍然是旧语言。由于未杀死onCreate,因此不会调用它。 我也将进行更多活动,我不想在移动应用程序以调用onCreate时完成并开始活动。如何更改语言而无需重新创建活动

1 个答案:

答案 0 :(得分:0)

您可以尝试通过活动“手动”调用onConfigurationChanged:

Resources res = getResources();
DisplayMetrics dm = res.getDisplayMetrics();
Configuration conf = res.getConfiguration();
conf.locale = newLocale;
res.updateConfiguration(conf, dm);
onConfigurationChanged(conf);

还在AndroidManifest中声明您的活动:

android:configChanges="locale"