android 弹出dialog时activity的生命周期处在什么状态

 我来答
八哥说科技
高粉答主

2019-11-15 · 分享科技资讯,共享科技生活
八哥说科技
采纳数:111 获赞数:78603

向TA提问 私信TA
展开全部

处于pause状态。

当 Activity失去焦点, 被一个新的非全屏的Activity 或者一个透明的Activity (如弹窗dialog)被放置在栈顶,此时的状态叫做暂停状态(Paused)。

此时它依然与窗口管理器保持连接,Activity依然保持活力(保持所有的状态,成员信息,和窗口管理器保持连接),但是在系统内存极端低下的时候将被强行终止掉。所以仍然可见,但已经失去了焦点故不可与用户进行交互。

扩展资料:

activity的其它状态:

1、运行:如果当前的activity在前台界面上时(堆栈顶端)。

2、停止:如果activity完全被另一个全屏活动遮挡住时,它将会停止。该活动也仍保留全部的状态和成员信息,但将会被隐藏起来不再展示给用户,并且当内存在其他地方被需要时该活动就将会被系统杀死。

3、重启:如果activity处于暂停或者停止状态,系统将会在内存中终止该活动无论是结束活动或者杀死进程。当它再一次展示给用户时,它必须是完全重启并且恢复到之前的状态。

参考资料来源:百度百科-activity

QQMSD8
推荐于2017-09-15 · 知道合伙人软件行家
QQMSD8
知道合伙人软件行家
采纳数:6788 获赞数:13239
没有做不到,只有想不到,帮助别人的同时也是对自己的提升

向TA提问 私信TA
展开全部

如果是当前Activity弹出的dialog则不会执行Activity任何生命周期中的方法,只有其它Activity弹出了Dialog或者拦住了当前的Activity才会执行onPause() 

以下为Activity的生命周期图

关于Activity的生命周期的解释:

  1. 启动Activity:系统会先调用onCreate方法,然后调用onStart方法,最后调用onResume,Activity进入运行状态。

  2. 当前Activity被其他Activity覆盖其上或被锁屏:系统会调用onPause方法,暂停当前Activity的执行。

  3. 当前Activity由被覆盖状态回到前台或解锁屏:系统会调用onResume方法,再次进入运行状态。

  4. 当前Activity转到新的Activity界面或按Home键回到主屏,自身退居后台:系统会先调用onPause方法,然后调用onStop方法,进入停滞状态。

  5. 用户后退回到此Activity:系统会先调用onRestart方法,然后调用onStart方法,最后调用onResume方法,再次进入运行状态。

  6. 当前Activity处于被覆盖状态或者后台不可见状态,即第2步和第4步,系统内存不足,杀死当前Activity,而后用户退回当前Activity:再次调用onCreate方法、onStart方法、onResume方法,进入运行状态。

  7. 用户退出当前Activity:系统先调用onPause方法,然后调用onStop方法,最后调用onDestory方法,结束当前Activity。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
水平千金
2012-12-27 · 超过15用户采纳过TA的回答
知道答主
回答量:104
采纳率:0%
帮助的人:27.7万
展开全部
onPuse();这个方法
追问
如果dialog消失后activity回调的是哪个方法?
追答
onResume
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友e84f43c
2013-03-23
知道答主
回答量:18
采纳率:0%
帮助的人:4.4万
展开全部
貌似木有影响吧...
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式