Android之onSaveInstanceState()和onPause()的区别与联系

onPause():Activity的生命周期中的一个阶段,当Activity退出前台不再和用户进行交互时调用,可以用来保存一些持久化的数据。

onSaveInstanceState():帮助Activity保存临时的数据,比如各种UI状态。

联系与区别:两个方法都能够保存数据,一般onPause()用于保存持久化数据,比如向数据库写入数据,而onSaveInstanceState()用于保存临时数据。

注:当某个Activity正常结束生命周期,比如用户按下Back键调用onDestroy()方法时,onSaveInstanceState()方法不会被调用。其他情况下,比如按下Home键或者跳转到其他Activity,或者当某个Activity由于内存不足等原因被系统杀死时,就会调用onSaveInstanceState()方法。该方法是在onStop()方法之前被调用(与onPause()方法没有前后顺序),也就是说在Activity调用onStop()方法变得不可见之前就会调用onSaveInstanceState()保存Activity的UI信息,当该Activity被系统杀死后重新启动时,就会在onCreate()方法中取出onSaveInstanceState()保存的数据重新加载到UI上。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值