50

我需要知道是否有一个实例会在至少被调用一次onResume之前被调用。onCreate谢谢。

编辑:从活动生命周期来看,似乎并非如此。但我想仔细检查。

4

6 回答 6

123

onResume()永远不会被调用onCreate()

在活动生命周期中阅读更多信息

活动生命周期

于 2012-08-24T20:24:18.243 回答
16

onResume() 当活动进入前台时将始终调用,但它永远不会在之前执行onCreate()

于 2012-08-24T20:22:28.653 回答
8

这是基本的活动生命周期,可以帮助您更好地理解

您可以参考网站了解更多详情
http://developer.android.com/training/basics/activity-lifecycle/starting.html

于 2014-06-25T15:58:43.297 回答
8

我遇到了一个问题,其中覆盖的 onCreate没有被调用。我尝试调试和记录,我发现 oncreate 没有被调用。

原来我覆盖了错误的onCreate

@Override
    public void onCreate(@Nullable Bundle savedInstanceState, @Nullable PersistableBundle persistentState) {
        super.onCreate(savedInstanceState, persistentState);
    }

这是正确的。

@Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    }

发帖希望能帮到一些可怜的人。:)

所以正确的 onCreate() 总是会在 onResume 之前被调用

于 2018-03-27T07:46:51.540 回答
2

注意:此答案仅是对已接受答案的补充。

正如之前的答案所说:

onResume() will never be called before onCreate().

在Activity 生命周期启动 Activity中阅读有关它的更多信息。

下面是Activity 生命周期的完整图片,包括来自android-lifecycle 的Fragment Lifecycle

在此处输入图像描述

于 2016-10-05T06:32:52.513 回答
0

活动有自己的生命周期。只需阅读并查看这里的漂亮图表:

http://developer.android.com/reference/android/app/Activity.html

onResume 不假设在 onCreate 之前运行,因此您假设正确。

于 2012-08-24T20:24:12.460 回答