无需用户单击即无法以编程方式打开optionsMenu

Dro*_*Dev 5 android menu optionmenu

在我的项目中,我试图以编程方式打开optionsMenu,而无需单击用户的菜单键.我试过 openOptionsMenu()但它给了我一个像这样的错误android.view.WindowManager $ BadTokenException:无法添加窗口 - ..为什么它...这是什么解决方案...

08-13 14:53:02.687:E/AndroidRuntime(1213):FATAL EXCEPTION:main 08-13 14:53:02.687:E/AndroidRuntime(1213):java.lang.RuntimeException:无法启动活动ComponentInfo {com. veytila.candideye/com.veytila.candideye.MainActivity}:android.view.WindowManager $ BadTokenException:无法添加窗口 - 令牌null无效; 你的活动在运行吗?

nan*_*esh 1

我相信您正在 Oncreate 或 onResume 中执行此操作。仅当 Activity 的窗口初始化后,您才需要调用此 api。一种方法是将 onresume 中的延迟可运行程序发布到 ui 线程。