生命周期方法onPause和onStop

Gok*_*tug 0 android android-activity

我是Android新手。我已经做了一个星期。不幸的是,我无法处理生命周期方法onPause()和之间的差异onStop()。实际上,我阅读了有关这些方法的一些资源,但无法估计在下列情况发生时调用哪个方法。

  1. 当屏幕上显示活动X时,按智能手机的主页按钮

  2. 屏幕上显示活动X时,智能手机进入睡眠模式

  3. 某些智能手机可能会在屏幕上显示超出应用程序窗口的内容。当屏幕上仅显示活动X时,我将活动X的窗口缩小并打开第二个应用程序。手机屏幕上将显示两个应用程序的窗口。

我很抱歉提出这个问题,但我无法克服。

有谁能说出在这两种情况下执行这两种方法中的哪一种并解释这些方法之间的区别?

Ste*_*goo 5

像许多入门者一样,您可能会犯过“跳出随机教程”的错误。Android Developers是您应该开始的地方。它具有指南代码实验室许多其他资源

话虽如此,有关生命周期的问题已在相应的指南中得到了很好的解释。

onPause()

系统将这种方法称为用户离开您活动的第一个指示(尽管这并不总是意味着活动已被销毁)。它表示活动不再在前台(尽管如果用户处于多窗口模式,则仍然可以看到活动)。

然后...

onStop()

当您的活动对用户不再可见时,它已经进入停止状态,并且系统调用onStop()回调。例如,当新启动的活动覆盖整个屏幕时,可能会发生这种情况。当活动完成运行并即将终止时,系统还可以调用onStop()。

除了这些差异,OnStop将始终遵循OnPause和活动时,从恢复OnStop,它会去的OnRestart第一,并从那里,而继续OnPause将开始OnResume活动时GET恢复。有关更多信息,请参见下图。

如果您仍然感到困惑,请在评论中告诉我您仍然感到困惑

图片来源:Android开发者网站