【问题标题】:Common methods to both Activitiy and Fragment in AndroidAndroid中Activity和Fragment的常用方法
【发布时间】:2018-07-11 16:27:02
【问题描述】:
我对 Activity 和 Fragment 的常见生命周期方法持怀疑态度。我在面试中遇到了一个问题,现在我对这个问题感到困惑。
这是一个确切的问题,以下哪些生命周期方法对 Activity 和 Fragment 是通用的?
onAttach()、onCreate()、onStart 还是 onDetach ?
稍微解释一下会很有帮助。
【问题讨论】:
标签:
android
android-fragments
android-activity
android-fragmentactivity
android-lifecycle
【解决方案1】:
这里的activity和fragment的常用方法是onCreate() & onStart()
共同的意思是fragment和activity都有onCreate()和onStart() [还有onResume(), onPause(), onStop() & onDestroy()]生命周期方法。
这并不意味着如果您在活动中有一个片段,那么 onCreate() 或 onStart() 方法对于活动和考虑的片段都是相同的.它们是单独的方法,一个为activity运行(针对activity生命周期),一个为fragment运行(针对fragment生命周期)
onAttach() 和 onDetach() 回调仅特定于片段。
onAttach() 在片段与活动关联时调用(此处传入活动)。
onDetach() 在片段与活动解除关联时调用。
来自 android 开发者文档,
如果您要将现有的 Android 应用程序转换为使用片段,您可能只需将代码从 Activity 的回调方法移动到片段的相应回调方法中。
参考资料:
https://developer.android.com/guide/components/fragments
https://developer.android.com/reference/android/app/Activity