gpt4 book ai didi

java - Android:重写主要 Activity 的onCreate方法

转载 作者:搜寻专家 更新时间:2023-11-01 09:34:14 24 4
gpt4 key购买 nike

我有一个像这样的 Java Activity 。

package com.xxx.yyy.overrideoncreate;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
Log.d("DEBUG","Original oncreate");
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}

我希望将一些 onCreate 指令拆分到一个单独的类中,所以我也创建了它。

package com.xxx.yyy.overrideoncreate;

import android.os.Bundle;
import android.util.Log;

/**
* Created by oox on 26/6/17.
*/

public class SubClass extends MainActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
Log.d("DEBUG","Overridden");
super.onCreate(savedInstanceState);
}
}

我打算让 subClass.onCreate 覆盖 MainActivity.onCreate——应该显示覆盖的和原始的 oncreate 消息。然而,这似乎并没有发生,覆盖的消息没有出现在 Logcat 中。

知道我做错了什么吗?

提前致谢。

最佳答案

为了调用 SubClassonCreate,应该创建 SubClass 的实例而不是 的实例MainActivity 应用程序启动时。

要做到这一点,SubClass 应该成为应用程序的实际主要 Activity (即在应用程序启动时启动的 AndroidManifest.xml 中注册的 Activity 类)。

关于java - Android:重写主要 Activity 的onCreate方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44755985/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com