首页 感悟评价 正文

activity生命周期心得,activity生命周期的状态

admin头像 admin 感悟评价 2024-06-06 01:06:11 53
导读:如何在android面试中把Activity的生命周期说的很有逼格1、Activity生命周期的终点。有两种情况会导致它被触发:1)执行了Activity#finish()方法;...

如何在android面试中把Activity的生命周期说的很有逼格

1、Activity生命周期的终点。有两种情况会导致它被触发:1)执行了Activity#finish()方法;2)Android系统由于资源不足等原因决定杀掉Activity所在进程。通过isFinishing()方法可以判断出是哪种情况。在这个方法里,我们一般要做的事情是释放Activity占有的资源,例如后台正在进行的下载线程等等。

2、在Activity生命周期中,系统调用App生命周期中设置的回调方法,这些生命周期回调方法在第一层就像一个金字塔。活动生命周期的每个阶段都对应于金字塔的一个步骤。当系统创建一个新的Activity实例时,回调方法从塔的底部一级一级地移动到塔的顶部。

3、onCreate:当Activity创建时仅且调用一次,该方法主要适用于初始化页面。2 onStart:当Activity调用onCreate方法之后,然后调用此方法开启Activity,Activty此时可见但不可交互。3 onResume:此时Activity在前台可见且可与用户交互。适合做UI更新操作。4 onPouse:当Activity被另外一个Activity覆盖时调用该方法。

Activity详解(二)——异常情况下的生命周期分析

1、在默认情况下,如果我们的Activity不做特殊处理,那么当系统配置发生改变后,Activity就会被销毁并重新创建,其生命周期如下图:当系统配置发生改变后,Activity会被销毁,其onPause,onStop,onDestroy均会被调用,由于Activity是在异常情况下终止的,系统会调用onSaveInstanceState来保存当前Activity的状态。

2、通过上述图示,我们可以总结Activity的生命周期规律如下:启动Activity:系统会先调用onCreate方法,然后调用onStart方法,最后调用onResume,Activity进入运行状态。当前Activity被其他Activity覆盖其上或被锁屏:系统会调用onPause方法,暂停当前Activity的执行。

3、Activity生命周期的终点。有两种情况会导致它被触发:1)执行了Activity#finish()方法;2)Android系统由于资源不足等原因决定杀掉Activity所在进程。通过isFinishing()方法可以判断出是哪种情况。在这个方法里,我们一般要做的事情是释放Activity占有的资源,例如后台正在进行的下载线程等等。

4、活动生命周期的每个阶段都对应于金字塔的一个步骤。当系统创建一个新的Activity实例时,回调方法从塔的底部一级一级地移动到塔的顶部。当它位于金字塔的顶部时,活动位于用户的前台,此时用户可以与活动进行交互。当用户想要离开活动时,系统调用另一系列方法将活动的状态从顶部移到底部。

5、当 Activity 失去焦点, 被一个新的非全屏的 Activity 或者一个透明的 Activity 被放置在栈顶,此时的状态叫做暂停状态(Paused)。此时它依然与窗口管理器保持连接, Activity 依然保持活力(保持所有的状态,成员信息,和窗口管理器保持连接),但是在系统内存极端低下的时候将被强行终止掉。

6、首先按照官方生命周期流程图逐个解释生命周期回调 当Activity首次创建的时候触发,这是生命周期的第一个方法,我们需要重写这个回调,并在调用setContentView()去加载界面布局资源,以及实例化一些变量。该方法有一个参数savedInstanceState,该参数包含Activity先前保存状态的Bundle对象。

Activity的生命周期及常见回调顺序

在Activity被销毁之前会回调该方法,这也是Activity生命周期的最后一个回调。

activity主要生命周期的方法说明: onCreate(Bundle savedInstanceState):创建activity时调用。设置在该方法中,还以Bundle的形式提供对以前储存的任何状态的访问!onStart():activity变为在屏幕上对用户可见时调用。

onCreate:当Activity创建时仅且调用一次,该方法主要适用于初始化页面。2 onStart:当Activity调用onCreate方法之后,然后调用此方法开启Activity,Activty此时可见但不可交互。3 onResume:此时Activity在前台可见且可与用户交互。适合做UI更新操作。4 onPouse:当Activity被另外一个Activity覆盖时调用该方法。

本文地址:https://dlaiersite.com/post/3851.html
若非特殊说明,文章均属本站原创,转载请注明原链接。

退出请按Esc键