public static void FlipLayoutAxes(RectTransform rect, bool keepPositioning, bool recursive)
{
if (rect != null)
{
if (recursive)
{
for (int i = 0; i < rect.childCount; i++)
{
RectTransform child = rect.GetChild(i) as RectTransform;
if (child != null)
{
FlipLayoutAxes(child, false, true);
}
}
}
rect.pivot = GetTransposed(rect.pivot);
rect.sizeDelta = GetTransposed(rect.sizeDelta);
if (!keepPositioning)
{
rect.anchoredPosition = GetTransposed(rect.anchoredPosition);
rect.anchorMin = GetTransposed(rect.anchorMin);
rect.anchorMax = GetTransposed(rect.anchorMax);
}
}
}