您的位置:首页 > 移动开发 > Android开发

Android Activity生命周期中的7个阶段

2016-11-10 20:49 645 查看
Android Activity生命周期中可认为分为7个阶段;用7个函数原型来描述吧

protected void onCreate(Bundle savedInstanceState)

protected void onStart()

protected void onResume()

protected void onPause()

protected void onStop()

protected void onRestart()

protected void onDestroy()

activity主要生命周期的方法说明:

onCreate(Bundle savedInstanceState):创建activity时调用。设置在该方法中,还以Bundle的形式提供对以前储存的任何状态的访问!

onStart():activity变为在屏幕上对用户可见时调用。

onResume():activity开始与用户交互时调用(无论是启动还是重新启动一个活动,该方法总是被调用的)。

onPause():activity被暂停或收回cpu和其他资源时调用,该方法用于保存活动状态的,也是保护现场,压栈吧!

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

onRestart():重新启动activity时调用。该活动仍在栈中,而不是启动新的活动。

onDestroy():activity被完全从系统内存中移除时调用,该方法被调用可能是因为有人直接调用onFinish()方法或者系统决定停止该活动以释放资源!



public class MyActivity extends Activity {

     // 在Activity生命周期开始时被调用

    public void onCreate(Bundle icicle) {

    }

    // onCreate完成后被调用,用来回复UI状态

    public void onRestoreInstanceState(Bundle savedInstanceState) {

    }

    //当activity从停止状态重新启动时调用

    public void onRestart(){

    }

    //当activity对用户即将可见的时候调用。

    public void onStart(){

    }

     //当activity将要与用户交互时调用此方法,此时activity在activity栈的栈顶,用户输入已经可以传递给它

    public void onResume(){

    }

    // Activity即将移出栈顶保留UI状态时调用此方法

    public void onSaveInstanceState(Bundle savedInstanceState) {

    }

    //当系统要启动一个其他的 activity时调用(其他的activity显示之前),这个方法被用来提交那些持久数据的改变、停止动画、和其他占用 CPU资源的东西。由于下一个activity在这个方法返回之前不会resumed,所以实现这个方法时代码执行要尽可能快。

    public void onPause(){

    }

    //当另外一个activity恢复并遮盖住此activity,导致其对用户不再可见时调用。一个新activity启动、其它activity被切换至前景、当前activity被销毁时都会发生这种场景。

    public void onStop(){

    }

    //在activity被销毁前所调用的最后一个方法,当进程终止时会出现这种情况

    public void onDestroy(){

    }

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息