我希望我的主要活动中的菜单按钮始终处于打开状态。我用过:
@Override
public void onAttachedToWindow() {
super.onAttachedToWindow();
openOptionsMenu();
}
当我进入活动时打开菜单。但是,当我按下菜单按钮选项转到另一个活动并按下后退按钮时,菜单会消失并要求我按下“菜单”键才能将其取回。我希望菜单在此特定活动中始终保持打开状态。
我试图覆盖 Activity 的 onBackPressed:
@Override
public void onBackPressed(){
super.onBackPressed();
this.openOptionsMenu();
}
我已经尝试在 onCreate 中添加 this.openOptionsMenu。当我这样做时,我的应用程序崩溃并出现以下错误:
12-17 09:19:46.674: 错误/AndroidRuntime(4940): 致命异常: main 12-17 09:19:46.674: 错误/AndroidRuntime(4940): java.lang.RuntimeException: 无法启动活动 ComponentInfo{com. cmu.community/com.cmu.community.HomeActivity}: android.view.WindowManager$BadTokenException: Unable to add window -- token null 无效;您的活动正在运行吗?12-17 09:19:46.674: 错误/AndroidRuntime(4940): 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663) 12-17 09:19:46.674: 错误/AndroidRuntime(4940): 在 android. app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) 12-17 09:19:46.674: 错误/AndroidRuntime(4940): 在 android.app.ActivityThread.access$2300(ActivityThread.java:125) 12-17 09:19 :46.674: 错误/AndroidRuntime(4940): 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java: NativeStart.main(Native Method) 12-17 09:19:46.674: ERROR/AndroidRuntime(4940): Caused by: android.view.WindowManager$BadTokenException: Unable to add window -- token null 无效;您的活动正在运行吗?12-17 09:19:46.674: ERROR/AndroidRuntime(4940): at android.view.ViewRoot.setView(ViewRoot.java:505) 12-17 09:19:46.674: ERROR/AndroidRuntime(4940): at android. view.WindowManagerImpl.addView(WindowManagerImpl.java:177) 12-17 09:19:46.674: 错误/AndroidRuntime(4940): 在 android.view.WindowManagerImpl.addView(WindowManagerImpl.java:91) 12-17 09:19: 46.674: ERROR/AndroidRuntime(4940): at android.view.Window$LocalWindowManager.addView(Window.java:424) 12-17 09:19:46.674: ERROR/AndroidRuntime(4940): at com.android.internal.policy .impl.PhoneWindow.openPanel(PhoneWindow.java:463) 12-17 09:19:46.674: 错误/AndroidRuntime(4940):
有人对此有解决方案吗?