fragment与Activity的生命周期

fragment的生命周期

1,onAttach(Activity)  ,fragment与Activity连接时,系统调用此方法
2,onCreate(Bundle)  ,创建Fragment时被调用
3,onCreateView(LayoutInflater, ViewGroup, Bundle),创建Fragment视图时,系统调用此方法
4,onActivityCreated(Bundle) 当Activity的onCreate()执行完之后调用
5,onStart() ,用户看到界面时调用
6,onResume() ,用户获取焦点时调用
7,onPause(),用户失去焦点时调用
8,onStop(),界面被完全遮盖时调用
9,onDestroyView() ,销毁Fragment视图,与onCreateView对应
10,onDestroy()  销毁Fragment,与onCreate对应
11,onDetach() 与Activity断开连接,与onAttach对应

Activity的生命周期

1,onCreate() 第一次创建时执行
2,onStart() 显示窗口时执行
3,onResume() 可获取用户焦点时执行
4,onPause() 失去用户焦点时执行
5,onStop() 关闭窗口时执行
6,onRestart() 重新显示窗口时执行
7,onDestroy() 销毁时执行


生命周期描述:
/**
 * activity生命周期
 */
//启动activity时执行
// -----------------onCreate-----------第一次创建时执行
// -----------------onStart-----------显示窗口时执行
// -----------------onResume-----------可获取用户焦点时执行
//跳转到第2个activity时
//第一个activity失去焦点
// -----------------onPause-----------
//第2个activity启动
// -----------------onCreate2-----------
//-----------------onStart2-----------
// -----------------onResume2-----------
//第一个activity执行
//-----------------onStop-----------关闭窗口时执行
//点击返回第一个activity
//第2个activity失去焦点-----------------onPause2-----------
//第1个activity重新启动-----------------onRestart-----------重新显示窗口时执行
//----------------onStart-----------
//-----------------onResume-----------
//第2个activity停止并销毁
//-----------------onStop2-----------
//-----------------onDestroy2-----------
//退出程序
//-----------------onPause-----------
// -----------------onStop-----------
// -----------------onDestroy-----------销毁时执行)


二者关系:Fragment的生命周期直接依赖于Activity

对应关系打印信息:

09-15 03:10:17.336: I/MainActivity(2939): ==onCreate==
09-15 03:10:17.336: I/Fragment1(2939): ==onAttach==
09-15 03:10:17.366: I/Fragment1(2939): ==onCreate==
09-15 03:10:17.467: I/Fragment1(2939): ==onCreateView==
09-15 03:10:17.467: I/Fragment1(2939): ==onActivityCreated==

09-15 03:10:17.467: I/MainActivity(2939): ==onStart==
09-15 03:10:17.467: I/Fragment1(2939): ==onStart==

09-15 03:10:17.476: I/MainActivity(2939): ==onResume==
09-15 03:10:17.476: I/Fragment1(2939): ==onResume==

09-15 03:11:03.327: I/Fragment1(2939): ==onPause==
09-15 03:11:03.327: I/MainActivity(2939): ==onPause==

09-15 03:11:04.666: I/Fragment1(2939): ==onStop==
09-15 03:11:04.666: I/MainActivity(2939): ==onStop==

09-15 03:11:04.666: I/Fragment1(2939): ==onDestroyView==
09-15 03:11:04.666: I/Fragment1(2939): ==onDestroy==
09-15 03:11:04.666: I/Fragment1(2939): ==onDetach==
09-15 03:11:04.666: I/MainActivity(2939): ==onDestroy==

你可能感兴趣的:(Android)