onSaveInstanceState()什么时候会被执行呢?
1.当用户按下HOME键:系统不知道你按下HOME键后要运行多少其他的程序,自然也不知道activityA是否会被销毁,故系统会调用onSaveInstanceState(),让用户有机会保存某些非永久性的数据。
2.长按HOME键:此时会弹出历史应用,选择运行其他的程序时。
3.按下电源键(解锁)时。
4.从ActivityA中启动一个新的Activity时。
5.屏幕方向切换时:在屏幕切换之前,系统会销毁ActivityA,在屏幕切换之后系统又会自动的创建ActivityA,所以onSaveInstanceState一定会被执行。
总而言之,onSaveInstanceState的调用遵循一个重要原则:当系统“未经许可”时销毁了你的Activity,则onSaveInstanceState会被系统调用,这是系统的责任,因为它必须提供一个机会让你保存你的数据。
1.当用户按下HOME键:系统不知道你按下HOME键后要运行多少其他的程序,自然也不知道activityA是否会被销毁,故系统会调用onSaveInstanceState(),让用户有机会保存某些非永久性的数据。
2.长按HOME键:此时会弹出历史应用,选择运行其他的程序时。
3.按下电源键(解锁)时。
4.从ActivityA中启动一个新的Activity时。
5.屏幕方向切换时:在屏幕切换之前,系统会销毁ActivityA,在屏幕切换之后系统又会自动的创建ActivityA,所以onSaveInstanceState一定会被执行。
总而言之,onSaveInstanceState的调用遵循一个重要原则:当系统“未经许可”时销毁了你的Activity,则onSaveInstanceState会被系统调用,这是系统的责任,因为它必须提供一个机会让你保存你的数据。
本文详细介绍了onSaveInstanceState方法的调用时机,包括用户按下HOME键、屏幕方向改变等情形,并阐述了该方法的重要作用——确保应用程序能够在未得到明确许可的情况下被系统销毁时,有机会保存其非永久性数据。

被折叠的 条评论
为什么被折叠?



