Java 菜单充气机死机,如何解决?

Java 菜单充气机死机,如何解决?,java,android,logcat,Java,Android,Logcat,我正在编写一个应用程序,我的主菜单中有一个a类菜单充气器,我在这个菜单中有三个选项,分别是退出、关于和首选项。退出菜单项工作,但当我触摸其他两个应用程序崩溃 如果有任何帮助来修复它,我将不胜感激,我已经查看了清单,对我来说,它看起来都是正确的,并且所有的类都已定义 MenuInflater代码:- @Override public boolean onCreateOptionsMenu(android.view.Menu menu) { // TODO Auto-generated me

我正在编写一个应用程序,我的主菜单中有一个a类菜单充气器,我在这个菜单中有三个选项,分别是退出、关于和首选项。退出菜单项工作,但当我触摸其他两个应用程序崩溃

如果有任何帮助来修复它,我将不胜感激,我已经查看了清单,对我来说,它看起来都是正确的,并且所有的类都已定义

MenuInflater代码:-

@Override
public boolean onCreateOptionsMenu(android.view.Menu menu) {
    // TODO Auto-generated method stub
    super.onCreateOptionsMenu(menu);
    MenuInflater blowUp = getMenuInflater();
    blowUp.inflate(R.menu.main_menu, menu);

    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // TODO Auto-generated method stub
    switch(item.getItemId()){
        case R.id.aboutUs:
            Intent i = new Intent(MainMenu.this, AboutUs.class);
            startActivity(i);
            break;
        case R.id.prefs:
            Intent p = new Intent(MainMenu.this, Prefs.class);
            startActivity(p);
            break;
        case R.id.exit:
            finish();
            break;
    }
    return false;
}
每个项目的类别:-

public class AboutUs extends Activity{

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.about);
    }
}

public class Prefs extends PreferenceActivity{

    @SuppressWarnings("deprecation")
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        addPreferencesFromResource(R.xml.prefs);
    }
}
日志:-

03-06 16:39:21.040: E/AndroidRuntime(23894): FATAL EXCEPTION: main
03-06 16:39:21.040: E/AndroidRuntime(23894): android.content.ActivityNotFoundException:  Unable to find explicit activity class {coursework.android.travelapp/coursework.android.travelapp.AboutUs}; have you declared this   activity in your AndroidManifest.xml?
03-06 16:39:21.040: E/AndroidRuntime(23894):    at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1545)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at android.app.Instrumentation.execStartActivity(Instrumentation.java:1420)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at android.app.Activity.startActivityForResult(Activity.java:3446)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at  android.app.Activity.startActivityForResult(Activity.java:3407)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at android.app.Activity.startActivity(Activity.java:3617)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at android.app.Activity.startActivity(Activity.java:3585)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at coursework.android.travelapp.MainMenu.onOptionsItemSelected(MainMenu.java:63)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at android.app.Activity.onMenuItemSelected(Activity.java:2629)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at com.android.internal.policy.impl.PhoneWindow.onMenuItemSelected(PhoneWindow.java:1047)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at com.android.internal.view.menu.MenuBuilder.dispatchMenuItemSelected(MenuBuilder.java:735)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at com.android.internal.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:149)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:874)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at com.android.internal.view.menu.ListMenuPresenter.onItemClick(ListMenuPresenter.java:180)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at android.widget.AdapterView.performItemClick(AdapterView.java:301)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at android.widget.AbsListView.performItemClick(AbsListView.java:1276)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at android.widget.AbsListView$PerformClick.run(AbsListView.java:3067)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at android.widget.AbsListView$1.run(AbsListView.java:3963)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at android.os.Handler.handleCallback(Handler.java:615)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at android.os.Handler.dispatchMessage(Handler.java:92)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at android.os.Looper.loop(Looper.java:137)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at android.app.ActivityThread.main(ActivityThread.java:4898)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at java.lang.reflect.Method.invokeNative(Native Method)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at java.lang.reflect.Method.invoke(Method.java:511)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1006)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:773)
03-06 16:39:21.040: E/AndroidRuntime(23894):    at dalvik.system.NativeStart.main(Native Method)
.ActivityNotFoundException:找不到显式活动类

如果未在androidmanifest.xml中定义活动,则会发生此异常

像这样定义它

<activity android:name=".AboutUs" android:label="@string/app_name">

从您的LogCat:

android.content.ActivityNotFoundException:  Unable to find explicit activity class 
    {coursework.android.travelapp/coursework.android.travelapp.AboutUs}; 
    have you declared this activity in your AndroidManifest.xml?

有吗?我推荐。

谢谢,我已经在清单中声明了它,但是我使用了Projectname.AboutUs,我在项目名称中打了一个错,谢谢。可能是重复的