0
点赞
收藏
分享

微信扫一扫

在Music中长按一首歌,执行"添加到播放列表"时,屏幕会闪两次

慎壹 2023-04-04 阅读 20


請將 PhoneWindow.DialogMenuCallback 裡所有的用到 mSubMenuHelper 註釋掉, 就可以解決這個問題
詳細修改如下

private final class DialogMenuCallback implements MenuBuilder.Callback, MenuPresenter.Callback {

         private int mFeatureId;

         //private MenuDialogHelper mSubMenuHelper;

         public DialogMenuCallback(int featureId) {

             mFeatureId = featureId;

         }

         public void onCloseMenu(MenuBuilder menu, boolean allMenusAreClosing) {

             if (menu.getRootMenu() != menu) {

                 onCloseSubMenu(menu);

             }

             if (allMenusAreClosing) {

                 Callback callback = getCallback();

                 if (callback != null && !isDestroyed()) {

                     callback.onPanelClosed(mFeatureId, menu);

                 }

                 if (menu == mContextMenu) {

                     dismissContextMenu();

                 }

                 // Dismiss the submenu, if it is showing

                 //if (mSubMenuHelper != null) {

                 //    mSubMenuHelper.dismiss();

                 //    mSubMenuHelper = null;

                 //}

             }

         }

         public void onCloseSubMenu(MenuBuilder menu) {

             Callback callback = getCallback();

             if (callback != null && !isDestroyed()) {

                 callback.onPanelClosed(mFeatureId, menu.getRootMenu());

             }

         }

         public boolean onMenuItemSelected(MenuBuilder menu, MenuItem item) {

             Callback callback = getCallback();

             return (callback != null && !isDestroyed())

                     && callback.onMenuItemSelected(mFeatureId, item);

         }

         public void onMenuModeChange(MenuBuilder menu) {

         }

         public boolean onOpenSubMenu(MenuBuilder subMenu) {

             if (subMenu == null) return false;

             // Set a simple callback for the submenu

             subMenu.setCallback(this);

             // M: ListMenuPresenter create sub menu dialog there 

             // The window manager will give us a valid window token

             //mSubMenuHelper = new MenuDialogHelper(subMenu);

             //mSubMenuHelper.show(null);

             return true;

         }

     }


举报
0 条评论