您的位置:首页 > 其它

关于Activity生命周期的详解

2017-01-22 12:59 218 查看

前言

现在我们都知道Android是通过栈来管理Activity的,从而根据Activity何时入栈何时出栈以及在栈中的位置,Android将Activity的活跃周期做了分类。

先让我们看一下Activity的完整生命周期:

onCreate();

onStart();
onResume();
onPause();    
onStop();
onDestroy();
onRestart();

当然,onRestart();是你要重新恢复一个已经原来已经创建过的Activity时才会调用的方法。

1.理解生命周期前先理解栈

栈,在这里也可以叫做返回栈,管理Activity,它属于后进先出的的数据结构,你启动一个Activity,这个Activity会入栈,并且处于栈顶的位置,当你将Activity销毁的时候,这个Activity会出栈;Android总是会显示处于栈顶位置的Activity。

根据栈来划分Activity的活动状态

运行状态:Activity处于栈顶,可以与用户进行交互。
暂停状态:Activity不位于栈顶,但是仍然可见。
停止状态:Activity不位于栈顶,并且完全不可见。
销毁状态:Activity从栈中移除。

2.Activity生命周期

onCreate();--->这个方法会在活动创建的初始时候创建,你可以在这个方法里面设置你的布局,初始化数据以及其他的一些初始化操作。

onStart();--->该方法是Activity由不可见变为可见的时候调用。

onResume():--->当Activity处于栈的顶端,已经准备好与用户进行交互的时候,这个方法会调用。

onPause();--->当Activity准备去启动一个新的Activity或者恢复一个原有的Activity时,方法会被调用。

onStop();--->当Activity不在处于栈顶的时候,并且完全不可见,该方法会被调用。

onDestory();--->当Activity被移除栈的时候调用,活动会被销毁。

onRestart();--->当Activity创建完成却又被暂停,当再次恢复这个活动的时候,该方法会被调用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: