`
月下独酌
  • 浏览: 128394 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

and10

 
阅读更多
public void setWorkspace(Workspace workspace) {
        this.workspace = workspace;
    }

    public void setGroupNavi(GroupNavigation groupNavi) {
        this.groupNavi = groupNavi;
    }

    public static boolean isDragging() {
        return dragging;
    }

    public void doWingsAnimation() {
        needWingsAnimation = true;
    }
   
    public void doNotWingsAnimation() {
        needWingsAnimation = false;
    }

    public void snap2ScreenWings() {
        haveGroupChange = false;
        doWingsAnimation();
    }

    public void snap2GroupWings() {
        transferAtListener.clearAnimationState();
        haveGroupChange = true;
        changeWingsAnimationState = true;
        doWingsAnimation();
    }
   

    private static void setDraging(boolean flag) {
        dragging = flag;
    }
   
    private void findCellPoint(DropTarget dropTarget, int[] coordinates, float x, float y) {
        if (mDragging && dragObjectInfo != null && dropTarget != null) {
            try {
                CellLayout current = (CellLayout) workspace.getCurrentCellLayout();
                if (current != null) {
                    if (dropTarget instanceof FolderIcon && !(dropTarget instanceof LiveFolderIcon)
                            && dragObjectInfo.spanX == 1 && dragObjectInfo.spanY == 1
                            && !(dragObjectInfo.cell instanceof FolderIcon)) {
                      
                        current.pointToCellExact(coordinates[0], coordinates[1], cellPosition);
                    } else {
                        if (current != currentBak || vacantCell == null) {
                            vacantCell = current.findAllVacantCells(null, mOriginator);
                            currentBak = current;
                        }

                      
                        if (dropTarget.getClass().equals(groupNavi.getChildAt(0).getClass())) {
                          
                            if (dragObjectInfo.group == -1 || dragObjectInfo.group != workspace.getCurrentGroup()) {
                                int[] cellXY = new int[2];
                                if (current.getAvailableCell(cellXY, dragObjectInfo.spanX, dragObjectInfo.spanY)) {
                                    cellPosition = cellXY;
                                } else {
                                    cellPosition = null;
                                }
                            } else {
                                cellPosition = new int[2];
                                cellPosition[0] = dragObjectInfo.cellX;
                                cellPosition[1] = dragObjectInfo.cellY;
                            }
                        } else {
                            cellPosition = current.findNearestVacantArea((int) (x - mTouchOffsetX),
                                    (int) (y - mTouchOffsetY), dragObjectInfo.spanX, dragObjectInfo.spanY, vacantCell,
                                    null);
                        }
                    }
                }
            } catch (Exception e) {
                e.printStackTrace();
               
            }
        }
    }
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics