Android Activity finish() 函数执行顺序详解
Activity 的 'finish()' 函数用于结束当前 Activity,其执行顺序如下:
-
当调用 'finish()' 函数时,系统会立即将 Activity 标记为 '结束状态',并将其添加到系统的 '结束队列' 中。
-
接着,系统会调用 'onPause()' 函数来通知 Activity 即将被暂停,此时 Activity 仍然可以继续执行一些代码,例如保存用户数据等。
-
随后,系统会调用 'onStop()' 函数来通知 Activity 已经停止,此时 Activity 不再可见,但仍然可以继续执行一些代码,例如释放资源等。
-
最后,系统会调用 'onDestroy()' 函数来通知 Activity 即将被销毁,此时 Activity 应该释放所有资源,并清除所有状态。
需要注意的是,'finish()' 函数只是将 Activity 标记为 '结束状态',并没有立即销毁它,实际的销毁过程由系统自动完成。因此,如果在 'finish()' 函数执行后立即访问 Activity 的任何成员变量或方法,可能会导致空指针异常或其他错误。
原文地址: http://www.cveoy.top/t/topic/oCKc 著作权归作者所有。请勿转载和采集!