Android Fragment
Activity 加载 Fragment
的时候,依次调用下面的方法
onAttach() -> onCreate() -> onCreateView() -> onActivityCreated() -> onStart() -> onResume()
图示
-
当
Fragment
所在的Activity
可见,但不获得焦点时,比如悬浮的对话框风格的Activity
,就会调用 onPause -
当对话框关闭,
Activity
又获得了焦点,就会调用 onResume -
替换
Fragment
,并调用addToBackStack()
将它添加到Back
栈中onPause -> onStop -> onDestoryView
注意 ,此时
Fragment
还没有被销毁 -
按下键盘的回退键,
Fragment
会再次显示出来onCreateView -> onActivityCreated -> onStart -> onResume
-
如果替换后, 在事务
commit
之前 没有调用addToBackStack()
方法将Fragment
添加到back
栈中的话;又或者退出了Activity
的话,那么Fragment
将会被完全结束, Fragment会进入销毁状态onPause -> onStop -> onDestoryView -> onDestory -> onDetach