我对“活动”和“片段”的常见生命周期方法持怀疑态度。我在面试中遇到一个问题,现在我对该问题感到困惑。
这里是问的确切问题:Activity和Fragment共有以下哪些生命周期方法?
onAttach(),onCreate(),onStart或onDetach吗?
稍作解释会有所帮助。
答案 0 :(得分:2)
活动和片段的通用方法是 onCreate()和 onStart()
通用,意味着片段和活动都具有 onCreate()和onStart() [也onResume(),onPause(),onStop()和onDestroy()]生命周期方法。
这并不意味着如果活动中有片段,则活动和所考虑片段的 onCreate()或 onStart()方法都相同。它们是单独的方法,一种针对活动运行(针对活动生命周期),另一种针对碎片运行(针对碎片生命周期)
onAttach()和 onDetach()回调仅特定于片段。
onAttach()在片段已与活动关联(活动在此处传递)时被调用。
当片段与活动解除关联时,会调用onDetach()。
从android开发人员文档中,
如果要将现有的Android应用程序转换为使用片段,则可以将代码从活动的回调方法移至片段的相应回调方法中。
参考: https://developer.android.com/guide/components/fragments https://developer.android.com/reference/android/app/Activity