我是Android的新手,正在开发我的第一个应用程序.
我的主要活动是没有ActionBar.而且我不想在其中显示任何菜单Activity.一切都工作正常但是当我按下设备本身的菜单按钮时,它会导致我的应用程序强行关闭而不是忽略它.
我正在为sdk> = 8开发,所以我正在使用支持库.我尝试OnCreateOptionMenu()在代码中添加任何内容,但结果却相同.  
我的应用程序的名称是GUI,包是gui.这是Logcat:
10-09 19:52:32.920: E/AndroidRuntime(7440): FATAL EXCEPTION: main
10-09 19:52:32.920: E/AndroidRuntime(7440): java.lang.NullPointerException
10-09 19:52:32.920: E/AndroidRuntime(7440):     at android.support.v7.app.ActionBarImplICS.getThemedContext(ActionBarImplICS.java:274)
10-09 19:52:32.920: E/AndroidRuntime(7440):     at android.support.v7.app.ActionBarActivityDelegate.getMenuInflater(ActionBarActivityDelegate.java:89)
10-09 19:52:32.920: E/AndroidRuntime(7440):     at android.support.v7.app.ActionBarActivity.getMenuInflater(ActionBarActivity.java:71)
10-09 19:52:32.920: E/AndroidRuntime(7440):     at android.app.Activity.onCreatePanelMenu(Activity.java:2554)
10-09 19:52:32.920: E/AndroidRuntime(7440):     at android.support.v4.app.FragmentActivity.onCreatePanelMenu(FragmentActivity.java:224)
10-09 19:52:32.920: E/AndroidRuntime(7440):     at android.support.v7.app.ActionBarActivity.superOnCreatePanelMenu(ActionBarActivity.java:224)
10-09 19:52:32.920: E/AndroidRuntime(7440):     at android.support.v7.app.ActionBarActivityDelegateICS.onCreatePanelMenu(ActionBarActivityDelegateICS.java:141)
10-09 19:52:32.920: E/AndroidRuntime(7440):     at android.support.v7.app.ActionBarActivity.onCreatePanelMenu(ActionBarActivity.java:199)
10-09 19:52:32.920: E/AndroidRuntime(7440):     at android.support.v7.app.ActionBarActivityDelegateICS$WindowCallbackWrapper.onCreatePanelMenu(ActionBarActivityDelegateICS.java:280)
10-09 19:52:32.920: E/AndroidRuntime(7440):     at com.android.internal.policy.impl.PhoneWindow.preparePanel(PhoneWindow.java:453)
10-09 19:52:32.920: E/AndroidRuntime(7440):     at com.android.internal.policy.impl.PhoneWindow.onKeyDownPanel(PhoneWindow.java:853)
10-09 19:52:32.920: E/AndroidRuntime(7440): …我发现当我按下设备上的菜单按钮时,它会给我一个NullPointerException.
 public boolean onCreateOptionsMenu(Menu menu) {
       getMenuInflater().inflate(R.menu.main, menu); //NullPointer Here
        return true;
    }
所以我做的是通过删除上面的第二行并将返回类型更改为false来完全禁用菜单.但是,它仍然给我一个NullPointerException.这是堆栈:
11-25 03:50:20.931    1212-1212/com.sblive.aufschoolbliz E/InputEventSender? Exception dispatching finished signal.
11-25 03:50:20.931    1212-1212/com.sblive.aufschoolbliz E/MessageQueue-JNI? Exception in MessageQueue callback: handleReceiveCallback
11-25 03:50:21.040    1212-1212/com.sblive.aufschoolbliz E/MessageQueue-JNI? java.lang.NullPointerException
            at android.support.v7.app.ActionBarImplICS.getThemedContext(ActionBarImplICS.java:274)
            at android.support.v7.app.ActionBarActivityDelegate.getMenuInflater(ActionBarActivityDelegate.java:89)
            at android.support.v7.app.ActionBarActivity.getMenuInflater(ActionBarActivity.java:71)
            at android.app.Activity.onCreatePanelMenu(Activity.java:2505)
            at android.support.v4.app.FragmentActivity.onCreatePanelMenu(FragmentActivity.java:224)
            at android.support.v7.app.ActionBarActivity.superOnCreatePanelMenu(ActionBarActivity.java:224)
            at android.support.v7.app.ActionBarActivityDelegateICS.onCreatePanelMenu(ActionBarActivityDelegateICS.java:141)
            at android.support.v7.app.ActionBarActivity.onCreatePanelMenu(ActionBarActivity.java:199)
            at android.support.v7.app.ActionBarActivityDelegateICS$WindowCallbackWrapper.onCreatePanelMenu(ActionBarActivityDelegateICS.java:280)
            at com.android.internal.policy.impl.PhoneWindow.preparePanel(PhoneWindow.java:413)
            at com.android.internal.policy.impl.PhoneWindow.onKeyDownPanel(PhoneWindow.java:795)
            at com.android.internal.policy.impl.PhoneWindow.onKeyDown(PhoneWindow.java:1471)
            at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchKeyEvent(PhoneWindow.java:1867)
            at android.view.ViewRootImpl$ViewPostImeInputStage.processKeyEvent(ViewRootImpl.java:3791)
            at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:3774)
            at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3379)
            at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3429)
            at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3398)
            at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:3483)
            at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3406)
            at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:3540)
            at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3379) …