是否有可能调用 onPause(),然后立即调用 onResume()?换句话说,在调用它的 onPause() 之后,Activity 是否总是必须经过 onStop()、onStart() 和 onResume()?
活动生命周期文档说这是可能的,但是触发它的用户操作是什么?任何人都可以创建一个活动 JUnit 测试来证明这一点吗?
是否有可能调用 onPause(),然后立即调用 onResume()?换句话说,在调用它的 onPause() 之后,Activity 是否总是必须经过 onStop()、onStart() 和 onResume()?
活动生命周期文档说这是可能的,但是触发它的用户操作是什么?任何人都可以创建一个活动 JUnit 测试来证明这一点吗?
如果Activity
没有被另一个人完全遮挡,Activity
则onStop
不会被调用
是的,通常会发生onPause()
-> onResume()
-> onPause()
->onResume()
循环。
请参阅活动生命周期文档。
如果一个Activity
完全被遮挡(Activity
例如被另一个遮挡),它可能会被停止,但如果它只是被另一部分遮挡Activity
(例如,设置为对话框主题),那么它将简单地暂停,然后在“弹出”时恢复Activity
已经关了。
这里的图片很好地讲述了每一件事
onResume
Activity之后可以直接去onPause
。