gpt4 book ai didi

Android - 单击后退时语言更改

转载 作者:搜寻专家 更新时间:2023-11-01 08:03:26 25 4
gpt4 key购买 nike

我有这个设置部分,我允许用户更改应用程序中显示的语言。当用户选择不同的语言时, Activity 将重新加载,以便可以应用语言更改。但问题是,当用户在更改语言后立即单击返回时,后台 Activity 中显示的语言仍然相同。所以我的问题是,当我回到后台进行某些 Activity 时,我应该怎么做才能应用语言的变化?我想我应该做点什么来检测 onResume 方法的变化,但我不确定它是什么。如果您有任何建议,请让我知道。谢谢。

最佳答案

经过多次尝试,我找到了解决问题的方法。在我的 onCreate方法,我得到 SharedPreferences包含当前语言的值,并获取当前语言:

SharedPrefrences languagepref = getSharedPreferences("language",MODE_PRIVATE);
String language = languagepref.getString("languageToLoad", Locale.getDefault().getDisplayLanguage());

然后,在我的onResume方法,我给上面提到的变量赋值 language到局部变量,并更新 language 的值.然后我比较这两个变量 - 如果它们不同,我将销毁当前 Activity 并启动另一个:

@Override
public void onResume(){
super.onResume();

String oldLanguage = language;
language = languagepref.getString("languageToLoad", Locale.getDefault().getDisplayLanguage());
if (!oldLanguage.equals(language)){
finish();
startActivity(getIntent());
}
}

瞧,成功了!

关于Android - 单击后退时语言更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17783795/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com