关于保存Activity的instance state

来源:互联网 发布:epub手机打开知乎 编辑:程序博客网 时间:2024/05/01 00:03

        通常当跳转到其他Activity或按下Home键回到Launcher时,我们原来的Activity并不会被destroy,但是如果系统内存吃紧,还是会回收掉我们的Activity,这种情况下的Activity的状态信息是我们需要保留的,以便在下一次重建时显示必要信息,如用户输入等。当Activity不可见被stop时,系统会回调onSaveInstanceState(),我们可以重写这个回调方法,将必要的状态保存(默认会保存一些文本框等控件的数据)。然后再onCreate()或者是onRestoreInstanceState()中使用,注意:onRestoreInstanceState()是在onStart()。方法调用之后调用的,传入的bundle也和onCreate()传入的一模一样。

        如果是主动按下back键销毁Activity时,并不会回调onSaveInstanceState()方法。

0 0