我读了很多关于活动生命周期但我找不到简单的答案。假设有人按切换应用硬件按钮。当应用切换到其他应用onPause()
时,保证会被调用。同时按返回(关闭应用程序)或主页将调用onPause()
。
但这是问题所在。当我打开应用程序列表,我可以在应用程序之间切换时,只需按下按钮即可调用onPause()
?我的意思是只是点击切换应用调用onPause()
?
我不清楚,文档没有描述这种情况。
编辑:
我错了,只说按钮点击后没有调用onPause()
。对不起。
答案 0 :(得分:2)
根据Activity page,将调用onPause()
。当用户启动应用列表以开始刷掉应用时,位于前台的任何应用都会调用onPause()
。
答案 1 :(得分:0)
让我们假设某人正在按下切换应用硬件按钮。在有人从列表中选择不同的应用之前,不会调用
onPause()
。
您确定当您按下按钮时,您可以选择其他应用在您选择应用之前不会拨打onPause()
吗?我怀疑。
答案 2 :(得分:0)
应用程序最初会在应用程序列表出现之前调用onPause方法,但不会在刷掉它时(或者甚至在选择其他应用程序时)调用
答案 3 :(得分:0)
是onPause()总是在onDestroy()之前调用。它是这样的:onPaused() - > onStop() - >的onDestroy()
始终遵循箭头的方向。无论如何,这些方法都是连续的。像OnStop()这样的方法总是在onPause()之后和onDestroy()之前执行,无论情况如何。
答案 4 :(得分:0)
活动生命周期始终按文档中给出的顺序调用。含义onCreate
> onStart
> onResume
> onPause
> onStop
> onDestroy
。可能会有一些重复的调用,例如在onResume
和onPause
之间来回移动,因为活动到达前景并移动到后台,但它们始终按此顺序排列。这意味着,如果您确定要调用onDestroy
,那么您可以确定已调用onPause
和onStop
。