public void autoAdjustParent(ref Vector3 parentPos, ref Vector2 parentSize, Vector2 viewportSize) { if (isClampInner()) { Vector2 windowSize = getWindowSize(); parentSize = windowSize; DRAG_DIRECTION dragDirection = mDragViewComponent.getDragDirection(); if (dragDirection == DRAG_DIRECTION.DD_HORIZONTAL || dragDirection == DRAG_DIRECTION.DD_FREE) { parentSize.x = windowSize.x + (windowSize.x - viewportSize.x) * 2.0f; parentPos.x = -viewportSize.x * 0.5f + parentSize.x * 0.5f; } if (dragDirection == DRAG_DIRECTION.DD_VERTICAL || dragDirection == DRAG_DIRECTION.DD_FREE) { parentSize.y = windowSize.y + (windowSize.y - viewportSize.y) * 2.0f; parentPos.y = -viewportSize.y * 0.5f + parentSize.y * 0.5f; } } else { parentSize = viewportSize; DRAG_DIRECTION dragDirection = mDragViewComponent.getDragDirection(); if (dragDirection == DRAG_DIRECTION.DD_HORIZONTAL || dragDirection == DRAG_DIRECTION.DD_FREE) { parentPos.x = 0.0f; } if (dragDirection == DRAG_DIRECTION.DD_VERTICAL || dragDirection == DRAG_DIRECTION.DD_FREE) { parentPos.y = 0.0f; } } }