onSaveInstanceState&onRestoreInstanceState
onSaveInstanceState
当Activity可能会被销毁时,该Activity的onSaveInstanceState会被执行,除非Activity是主动销毁的。onSaveInstanceState的调用遵循一个规则,即未经允许,则onSaveInstanceState会被系统调用,这是一个保留数据的机会.
通常onSaveInstanceState被调用的情况有:
- 当用户按下HOME键时
- 长按HOME键,选择运行其他的程序时
- 按下电源键(关闭屏幕显示)时
- 从Activity启动新的Activity时
- 屏幕切换时
屏幕切换时,系统会销毁Activity再自动创建Activity,onSaveInstance一定会被执行
onRestoreInstanceState
onRestoreInstanceState会在Activity被系统销毁后,被重建时调用,在Activity的onStart之后调用
1 | protected void onSaveInstanceState(Bundle savedInstanceState) { |

