大佬教程收集整理的这篇文章主要介绍了android – 从Fragment添加项目到操作栏的选项菜单然后更改方向后崩溃,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
private String[] mapNames; @Override public void onCreate(Bundle savedInstanceStatE) { super.onCreate(savedInstanceStatE); setHasOptionsMenu(true); // init an String array `mapNames` which is used when populaTing submenu // ... } @Override public void onCreateOptionsMenu(Menu menu,MenuInflater inflater) { inflater.inflate(R.menu.fragment_maps,menu); SubMenu mapNamesMenu = menu.findItem(R.id.map_names).getSubMenu(); mapNamesMenu.clear(); for (int i=0; i<mapNames.length; i++) { mapNamesMenu.add(1,i,Menu.NONE,mapNames[i]); } super.onCreateOptionsMenu(menu,inflater); }
在res / menu / fragment_maps.xml中我有
<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://scheR_806_11845@as.android.com/apk/res/android"> <item android:id="@+id/map_names" android@R_908_6964@="Maps" android:icon="@drawable/maps_32" android:showAsAction="always|withText"> <menu> <item android:id="@+id/placeholder_maps" /> </menu> </item> </menu>
在旋转手机之前一切正常.方向更改后,此菜单变得不可访问(单击图标时没有任何反应).然后,如果我再次旋转手机,我会收到此错误:
FATAL EXCEPTION: main android.view.WindowManager$BadTokenException: Unable to add window -- token null is not valid; is your activity running? at android.view.ViewRoot.setView(ViewRoot.java:532) at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:177) at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:91) at android.view.Window$LocalWindowManager.addView(Window.java:424) at android.widget.PopupWindow.invokePopup(PopupWindow.java:912) at android.widget.PopupWindow.showAsDropDown(PopupWindow.java:824) at com.actionbarsherlock.internal.widget.IcsListPopupWindow.show(IcsListPopupWindow.java:226) at com.actionbarsherlock.internal.view.menu.@R_696_9407@opupHelper.tryShow(@R_696_9407@opupHelper.java:129) at com.actionbarsherlock.internal.view.menu.@R_696_9407@opupHelper.show(@R_696_9407@opupHelper.java:102) at com.actionbarsherlock.internal.view.menu.Action@R_696_9407@resenter.onSubMenuSELEcted(Action@R_696_9407@resenter.java:273) at com.actionbarsherlock.internal.view.menu.MenuBuilder.dispatchSubMenuSELEcted(MenuBuilder.java:263) at com.actionbarsherlock.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:892) at com.actionbarsherlock.internal.view.menu.ActionMenuView.invokeItem(ActionMenuView.java:510) at com.actionbarsherlock.internal.view.menu.ActionMenuItemView.onClick(ActionMenuItemView.java:145) at android.view.View.performClick(View.java:2494) at android.view.View$PerformClick.run(View.java:9122) at android.os.Handler.handleCallBACk(Handler.java:587) at android.os.Handler.dispatchmessage(Handler.java:92) at android.os.Looper.loop(Looper.java:130) at android.app.ActivityThread.main(ActivityThread.java:3806) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:507) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) at dalvik.system.NativeStart.main(Native Method)
任何想法如何解决?我使用的是Android 2.3.6
编辑:见test repository
以上是大佬教程为你收集整理的android – 从Fragment添加项目到操作栏的选项菜单然后更改方向后崩溃全部内容,希望文章能够帮你解决android – 从Fragment添加项目到操作栏的选项菜单然后更改方向后崩溃所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。