首页 > 代码库 > (7)Launcher3客制化之,修改单屏幕后,Fix在Hotseat拖动应用删除报错
(7)Launcher3客制化之,修改单屏幕后,Fix在Hotseat拖动应用删除报错
修改单屏幕后,在workspace里面拖动图标,到删除按钮上松开的时候,报错问题。
并且无法再次显示拖动的图标。
拖动松开手时候触发
public void onDropCompleted(final View target, final DragObject d, final boolean isFlingToDelete, final boolean success) { if (mDeferDropAfterUninstall) {//如果要卸载软件重新调用一次 mDeferredAction = new Runnable() { public void run() { onDropCompleted(target, d, isFlingToDelete, success); mDeferredAction = null; } }; return; } boolean beingCalledAfterUninstall = mDeferredAction != null; if (success && !(beingCalledAfterUninstall && !mUninstallSuccessful)) { if (target != this && mDragInfo != null) { CellLayout parentCell = getParentCellLayoutForView(mDragInfo.cell); if (parentCell != null) { parentCell.removeView(mDragInfo.cell); } if (mDragInfo.cell instanceof DropTarget) { mDragController.removeDropTarget((DropTarget) mDragInfo.cell); } // If we move the item to anything not on the Workspace, check if any empty // screens need to be removed. If we dropped back on the workspace, this will // be done post drop animation. stripEmptyScreens(); } } else if (mDragInfo != null && target != null && (!(target instanceof InfoDropTarget))) { CellLayout cellLayout; if (mLauncher.isHotseatLayout(target)) { cellLayout = mLauncher.getHotseat().getLayout(); } else { cellLayout = getScreenWithId(mDragInfo.screenId); } // if (cellLayout == null) { // throw new RuntimeException("Invalid state: cellLayout == null in " // + "Workspace#onDropCompleted. Please file a bug. "); // } 在此处加入这两句即可修复此BUG if (cellLayout != null) { cellLayout.onDropChild(mDragInfo.cell); } if( mDragInfo.cell!=null){ <span style="white-space:pre"> </span> mDragInfo.cell.setVisibility(VISIBLE); } } if ((d.cancelled || target instanceof InfoDropTarget || (beingCalledAfterUninstall && !mUninstallSuccessful)) && mDragInfo.cell != null) { mDragInfo.cell.setVisibility(VISIBLE); } mDragOutline = null; mDragInfo = null; }
(7)Launcher3客制化之,修改单屏幕后,Fix在Hotseat拖动应用删除报错
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。