activity的生命周期

来源:互联网 发布:java和matlab混合编程 编辑:程序博客网 时间:2024/04/28 20:13

activity主要生命周期的方法说明:
    onCreate(Bundle savedInstanceState): 创建activity时调用。设置在该方法中还以Bundle
的形式提供对以前储存的任何状态的访问!
   
    onStart(): activity变为在屏幕上对用户可见时调用。
   
    onResume(): activity开始与用户交互时调用(无论是启动还是重新启动一个活动,该方法总是被调用)。
   
    onPause(): activity被暂停或收回CPU和其他资源时调用,该方法用于保护活动状态的,也是保护现场,压栈。


    onStop(): activity被停止并转为不可见阶段及后续的生命周期事件时调用。

  
    onRestart(): 重新启动activity时调用。该活动仍在栈中,而不是启动新的活动。
   
    onDestroy(): activity被完全从系统内存中移除时调用。
   
    以上为activity生命周期的方法,其中必须调用的方法有三个: onCreate() -> onStart -> onResume()
    用AAA表示,示例如下:
    (1)父Activity启动子Activity,子Actvity退出,父Activity调用顺序如下
         AAA –> onFreeze() –> onPause() –> onStop() –> onRestart() –> onStart(),onResume() …
    (2)用户点击Home,Actvity调用顺序如下
         AAA –> onFreeze() –> onPause() –> onStop() — Maybe –> onDestroy() – Maybe
    (3)调用finish(), Activity调用顺序如下
         AAA –> onPause() –> onStop() –> onDestroy()
    (4)在Activity上显示dialog, Activity调用顺序如下
         AAA
    (5)在父Activity上显示透明的或非全屏的activity,Activity调用顺序如下
         AAA –> onFreeze() –> onPause()
    (6)设备进入睡眠状态,Activity调用顺序如下
         AAA –> onFreeze() –> onPause()

原创粉丝点击