Android Activity生命周期:onStart() - > onStop()可能吗?

时间:2010-10-05 15:46:25

标签: android

Android Application Fundamentals中,它表示在调用onStart() - 活动生命周期的方法之后,调用回调方法onResume()onStop()。如果活动“正常”开始,系统会调用onCreate()onStart()onResume()。 但有人知道一个接一个地执行onStart() - onStop()的例子吗?

3 个答案:

答案 0 :(得分:19)

  1. 从你的活动中,开始另一个不是全屏的活动(例如给它android:theme =“@ android:style / Theme.Dialog”)。

    此时你的第一个活动已经调用onPause()而不是onStop()因为它不在前面但仍然可见。

  2. 按回家。

    此时onStop()将被调用为您的第一个活动。

  3. 重新启动您的应用。

    此时onStart()被调用用于您的第一个活动,但不是onResume(),因为它仍然具有非全屏活动。

  4. 按回家。

    此时onStop()在第一个活动上被调用,没有通过onResume()。

答案 1 :(得分:0)

根据所提供页面上的流程图​​,如果没有调用onStop(),则无法调用onResume()。我可以想一下系统在启动过程中关闭应用程序的一些潜在场景,但我不知道这样的场景会触发什么或如何触发,或者它是否存在。

正如Tseng所指出的那样,任务永远不会被带到前台(我想是将手机与Exchange服务器同步的任务)。我想这样的任务永远不会被调用onResume()onPause()

答案 2 :(得分:0)

当用户离开您的活动时,系统会调用onStop()来停止活动 (1)。如果用户在活动停止时返回,系统将调用onRestart()
(2),然后快速调用onStart()
(3)和onResume()
(4)。请注意,无论何种情况导致活动停止,系统始终在调用

之前调用onPause()