【发布时间】:2014-04-08 06:11:55
【问题描述】:
当系统调用onPause 和onStop 活动生命周期方法时,我有一个困惑。我看到通过从我的活动导航到另一个应用程序,这里系统正在调用onPause 和onStop,当我再次启动我的应用程序的另一个活动时,系统正在调用onPause 和onStop 方法
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
startActivity(new Intent(this, SecondActivity.class));
}
这里answer 说“当一个 Activity 将控制权转移到另一个 Activity 时调用 onPause(),当 Activity 处于完成模式时调用 onStop() 方法。”这对我来说似乎是错误的,当我开始另一个活动时,两者都在调用,我只是开始了活动并没有完成它,但仍然 onPause 和 onStop 方法正在调用。
Doc 说“当您的活动时间不长时,它会调用
onStop”我很好,它会调用onStop
当您的 Activity 不再可见并被另一个 Activity 隐藏但仍然onPause 也在调用但为什么??
【问题讨论】:
-
@Raghunandan 我读过,无法完全理解
-
也可以在这里查看:Activity Lifecycle。简单地说:
onPause()在活动被部分隐藏时被调用(例如AlertDialog显示)。onStop()在活动完全隐藏时调用(例如转移到另一个活动)。我有点同意链接的答案并不完全正确。 -
@Williams 文档具有可见生命周期和前台生命周期。这应该足以理解活动的生命周期。您还可以记录信息覆盖活动生命周期方法来检查自己,而不是查看其他帖子
-
@Raghunandan 如果我已经明白了,否则我不会在这里问