Android API 中文 (3) —— 停止和重启一个Activity

在正常的应用程序使用时,前台活动有时通过使所述活动暂停等可视部件阻塞。例如,当一个半透明活性打开(诸如一个在一个对话的方式),在以前的活动暂停。只要活动仍部分可见,但当前未处于焦点中的活动,它保持暂停。

然而,一旦活性完全阻塞和不可见的,它停止(这将在下一课讨论)。

当你的活动进入暂停状态时,系统调用的onPause()方法的活动,它允许你停止不应该继续暂停时(如视频)正在进行的动作或持续存在,应永久保存,以防任何信息用户继续留下您的应用程序。如果用户返回到从暂停状态的活动,系统恢复,并调用onResume()方法。

注意:当你的活动接听电话时,onPause()它可能是一个迹象,该活动将被暂停了一会儿,用户可以将焦点返回到你的活动。然而,这通常是第一个迹象表明,用户正在离开你的活动。



图1.当用户离开你的活动时,系统调用的onStop()停止活动(1)。如果在活动停止用户返回,系统调用onRestart()(2),紧接着ONSTART()(3)和onResume()(4)。请注意,无论什么情况下会导致活动停止,系统()之前调用的onStop总是调用的onPause()。

停止你的活动
当你的活动收到一个调用的onStop()方法,它不再是可见的,应该释放那些在用户不使用它并不需要的几乎所有资源。一旦你的活动停止后,系统可能会破坏。例如,如果需要恢复系统内存。在极端情况下,该系统可能只是杀了你的应用程序,而无需调用该活动的最后的onDestroy()回调,让你用的onStop()释放可能泄漏内存资源,这一点很重要。

虽然在onPause()方法在onStop()调用之前,你应该使用的onStop()来执行更大,更多的CPU关机操作,如将信息写入数据库。

例如,这里的的onStop()的实现,节省了一张字条给永久存储草案的内容:

@Override
protected void onStop() 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值