首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >onResume()和onPostResume()在活动生命周期中有什么区别?

onResume()和onPostResume()在活动生命周期中有什么区别?
EN

Stack Overflow用户
提问于 2020-04-18 18:12:13
回答 2查看 2.7K关注 0票数 5

在Android中学习活动LifeCycle时,我对这两种方法感到困惑。我试着分别实现这两种方法,并且工作得很好。那这两对双胞胎有什么区别?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-04-18 18:16:49

onPostResume:

在活动恢复完成时调用(在调用活动的{@link #onResume}之后)。应用程序通常不会实现此方法;系统类打算在应用程序恢复代码运行后进行最终设置。

它可以做以下的事情

它将确保屏幕对用户是可见的,并将完成活动的最终设置。

删除消息队列中任何带有代码“什么”的挂起的消息。

检查所有片段是否恢复,并将控制器的FragmentManager管理的所有片段移动到恢复状态。

对控制器的FragmentManager管理的片段执行任何挂起的操作。

如果你检查它的生命周期,把它按下面的方式工作

onResume() -活性

onResume() -片段检查第三点,如前所述

onPostResume() -活动请参阅此处:Activity life cycle methods : onPostResume significance

票数 2
EN

Stack Overflow用户

发布于 2020-04-18 18:21:03

onResume()

protected void onResume()onRestoreInstanceState(Bundle)onRestart()onPause()之后调用,以便您的活动开始与用户交互。这是活动变得活跃并准备接受输入的指示。它位于活动堆栈的顶部,对用户是可见的。

在Build.VERSION_CODES.Q之前的平台版本上,这也是尝试打开独占访问设备或访问单例资源的好地方。从Build.VERSION_CODES.Q开始,系统中可以同时出现多个恢复的活动,因此应该使用onTopResumedActivityChanged(布尔值)。

派生类必须调用此方法的超类实现。如果不这样做,就会引发异常。

如果重写此方法,则必须调用超类实现。

onPostResume()

当活动恢复完成时(在调用了protected void onPostResume()之后)调用onResume()。应用程序通常不会实现此方法;系统类打算在应用程序恢复代码运行后进行最终设置。

派生类必须调用此方法的超类实现。如果不这样做,就会引发异常。

如果重写此方法,则必须调用超类实现。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61293970

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档