在Android Application Fundamentals中,它表示在调用onStart() - 活动生命周期的方法之后,调用回调方法onResume()
或onStop()
。如果活动“正常”开始,系统会调用onCreate()
,onStart()
,onResume()
。
但有人知道一个接一个地执行onStart()
- onStop()
的例子吗?
答案 0 :(得分:19)
从你的活动中,开始另一个不是全屏的活动(例如给它android:theme =“@ android:style / Theme.Dialog”)。
此时你的第一个活动已经调用onPause()而不是onStop()因为它不在前面但仍然可见。
按回家。
此时onStop()将被调用为您的第一个活动。
重新启动您的应用。
此时onStart()被调用用于您的第一个活动,但不是onResume(),因为它仍然具有非全屏活动。
按回家。
此时onStop()在第一个活动上被调用,没有通过onResume()。
答案 1 :(得分:0)
根据所提供页面上的流程图,如果没有调用onStop()
,则无法调用onResume()
。我可以想一下系统在启动过程中关闭应用程序的一些潜在场景,但我不知道这样的场景会触发什么或如何触发,或者它是否存在。
正如Tseng所指出的那样,任务永远不会被带到前台(我想是将手机与Exchange服务器同步的任务)。我想这样的任务永远不会被调用onResume()
或onPause()
。
答案 2 :(得分:0)
当用户离开您的活动时,系统会调用onStop()来停止活动
(1)。如果用户在活动停止时返回,系统将调用onRestart()
(2),然后快速调用onStart()
(3)和onResume()
(4)。请注意,无论何种情况导致活动停止,系统始终在调用