Inner classes Android中的两个onCreate()方法?
我正在研究另一个例子(在这里找到)。但是由于某种原因,我最终得到了两个Inner classes Android中的两个onCreate()方法?,inner-classes,soundpool,android,Inner Classes,Soundpool,Android,我正在研究另一个例子(在这里找到)。但是由于某种原因,我最终得到了两个onCreate()方法,如果我删除了其中一个,我就会出错 我正在尝试将MP3加载到声音池中一次,然后在其他活动中调用它们 我的代码: class MyApp extends Application { private static MyApp singleton; private static SoundPool mSoundPool; public onCreate() { // ##### D
onCreate()
方法,如果我删除了其中一个,我就会出错
我正在尝试将MP3加载到声音池中一次,然后在其他活动中调用它们
我的代码:
class MyApp extends Application {
private static MyApp singleton;
private static SoundPool mSoundPool;
public onCreate() { // ##### Deleting this gives me errors ###, not deleting it gives me 1 error.
super.onCreate();
singleton = this;
mSoundPool = new SoundPool(1, AudioManager.STREAM_MUSIC, 0);// Just an example
}
public static MyApp getInstance() {
return singleton;
}
public SoundPool getSoundPool() {
return mSoundPool;
}
}
public class TestAndroidGlobalsActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
您的代码每个类只有一个
onCreate
方法。它们有不同的用途,在操作系统创建每个类时调用它们
当创建应用程序并在MyApp
类中设置应用程序范围的状态时,将调用您的MyApp.onCreate
您的
TestAndRoidGlobalActivity.onCreate在创建活动时被调用,并为该特定活动设置状态,然后初始化其UI。您不能混淆Application.onCreate(在创建应用程序时调用)和Activity.onCreate(在每次调用活动时调用)(在一次应用程序执行过程中可能发生多次)
另外,在每个重写的方法上面都应该有@Override注释。因此,在应用程序类中有1个onCreate
,在Activity
中有1个,没关系。问题是为什么要将application
和Activity
放在一个文件中。我想这就是这样做的:如果我把它放在一个单独的文件中我怎么称呼它呢?第一个onCreate告诉我“缺少方法的返回类型”,我在那里做什么?(我是noob)