画两个矩形,怎么判断这两个矩形又没没有交集呢??有没有现成都方法??我直接用坐标判断的,有些麻烦,有没有方便写都写法??

解决方案 »

  1.   

    昨天刚好写了一个:
    public static boolean isOverlapping(Rect rc1, Rect rc2) {
    int left, right, top, bottom;
    if (rc1.left < rc2.left)
    left = rc1.left;
    else
    left = rc2.left; if (rc1.right > rc2.right)
    right = rc1.right;
    else
    right = rc2.right; if (rc1.top < rc2.top)
    top = rc1.top;
    else
    top = rc2.top; if (rc1.bottom > rc2.bottom)
    bottom = rc1.bottom;
    else
    bottom = rc2.bottom; if ((right - left < rc1.width() + rc2.width()) && (bottom - top < rc1.height() + rc2.height()))
    return true;
    else
    return false;
    }
         如果两个矩形有重叠,那么它们各自的长/宽相加的和,小于他们总共占用的长/宽
      

  2.   

      Rect.intersects(a, b)这是内置的判断交集 方法。其实自己写方法,也没有想像中那么麻烦,也就几句话。