
我有一个主要活动(让我们称之为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 – 如何重新创建以前的活动?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)