当旋转,即方向发生变化时,一个Activity被销毁然后重新创建,重置Activity状态数据。这可以通过覆盖 onSaveInstance 并将状态数据保存到其 Bundle 参数来解决。
但是当按下 Back 键时,表明用户打算真正退出应用程序,似乎没有机制可以摆脱或更新该状态 Bundle,因为 onSaveInstance 没有被调用。如果用户再次重新启动应用程序,在系统杀死应用程序的旧实例之前,旧状态 Bundle 会再次恢复,而不是重新开始并重新创建 Activity。现在应用程序被系统杀死后,问题就消失了。但我认为不可能通过覆盖 onBackPressed 来强制终止应用程序,例如。
所以我的问题是,如何保证 Activity 在下次运行应用程序时以新状态重新初始化?任何建议将不胜感激-thanx!