android– 如何重新创建以前的活动?

android– 如何重新创建以前的活动?,第1张

概述我有一个主要活动(让我们称之为A)和第二个活动(我们称之为B),用于更改应用程序的语言.关键是,当我单击按钮更改语言时,我也调用了recreate();和B改变它的语言.直到这里它还可以.问题出现在我回到主要活动(A)并且它没有更新语言因为它没有被重新创建时,所以,有没有办法从B重新创建A

我有一个主要活动(让我们称之为A)和第二个活动(我们称之为B),用于更改应用程序的语言.关键是,当我单击按钮更改语言时,我也调用了recreate();和B改变它的语言.直到这里它还可以.问题出现在我回到主要活动(A)并且它没有更新语言因为它没有被重新创建时,所以,有没有办法从B重新创建A以更新A?

我使用此代码翻译应用程序(eng版本示例):

public voID btnIngles_onClick(VIEw v){    Locale locale = new Locale("en");    Locale.setDefault(locale);    Configuration config = new Configuration();    config.locale = locale;    this.getApplicationContext().getResources().updateConfiguration(config, null);    recreate();}

解决方法:

1)活动B改变一些全局设置,例如可通过SharedPreferences访问

2)在活动A中:

@OverrIDeprotected voID onResume() {    super.onResume();    if(dIDLanguageChange)      recreate();}

问题解决了.当活动B进入前台时,活动A将调用onResume(),因为它已切换到暂停状态.

总结

以上是内存溢出为你收集整理的android – 如何重新创建以前的活动?全部内容,希望文章能够帮你解决android – 如何重新创建以前的活动?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1114904.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-29
下一篇2022-05-29

发表评论

登录后才能评论

评论列表(0条)

    保存