5

好吧,伙计们,我对此很陌生,所以请多多包涵……我基本上是在阅读一本关于 Android 开发的书,并按照其中的教程进行操作。

这个应用程序有 7 个活动(1 个名为 QuizActivity 扩展了 Activity,另外 6 个扩展了 QuizActivity - 其中 1 个是 QuizSplashActivity,我想在启动时启动)

但是,我对为什么默认活动似乎没有启动感到非常困惑。我的清单具有 QuizSplashActivity 的正确标签,并且 QuizSplashActivity 指向我创建的正确 .xml 布局文件。但是,当我运行程序时,控制台会显示:

[2013-03-11 17:19:47 - BeenThereDoneThat] 在设备模拟器 5554 上启动活动 com.example.beentheredonethat.QuizActivity

[2013-03-11 17:19:48 - BeenThereDoneThat] ActivityManager:开始:Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.example.beentheredonethat/.QuizActivity }

这是清单的应用程序部分:

 <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="QuizSplashActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name="QuizActivity"></activity>
        <activity android:name="QuizGameActivity"></activity>
        <activity android:name="QuizHelpActivity"></activity>
        <activity android:name="QuizMenuActivity"></activity>
        <activity android:name="QuizScoresActivity"></activity>
        <activity android:name="QuizSettingsActivity"></activity>
    </application>

这是我的 QuizSplashActivity,我想在启动时显示:

package com.example.beentheredonethat;

import android.os.Bundle;
import android.view.Menu;


public class QuizSplashActivity extends QuizActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.splash);
    }


    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.activity_quiz, menu);
        return true;
    }


}

关于为什么这样做的任何想法?任何帮助将不胜感激。谢谢!

4

1 回答 1

1

我认为这个问题是你在声明活动时表现出来的。您在活动名称之前缺少点:

android:name=".QuizSplashActivity"

并且编译器找不到您的活动。尝试修复它,它应该可以工作。还尝试清理您的项目,重新启动 Eclipse 并尝试再次启动应用程序。

于 2013-03-11T22:38:09.100 回答