//загрузка ui префаба
var go = PrefabUtility.LoadPrefabContents(ФайлПрефаба);
//после переноса объекта в родитель изменятся Scale
go.transform.SetParent(gameObject.transform);
//получение компонента Трансформация у элемента ui
var rt = go.GetComponent<RectTransform>();
//настройка центра элемента ui
rt.pivot = Vector2.zero;
//масштаб элемента ui
rt.localScale = Vector3.one;
//размеры ui элемента width,height,depth
rt.sizeDelta = new Vector3(60, 30, 0);
//изменить Top координаты элемента относительно родителя
rt.SetInsetAndSizeFromParentEdge(RectTransform.Edge.Top, 0.5f*(gameObject.transform.childCount-2)* (rt.rect.height+10), rt.rect.height);
//изменить Right
координаты элемента относительно родителя
rt.SetInsetAndSizeFromParentEdge(RectTransform.Edge.Right, rt.sizeDelta.x, rt.rect.height);
//изменение центра элемента ui по оси x
rt.pivot = new Vector2(2,0);
//Растянуть ui элемент относительно родителя по оси x
rt.localPosition = new Vector3(0, rt.localPosition.y, 0); rt.anchorMin = new Vector2(0, 0.5f);
rt.anchorMax = new Vector2(1, 0.5f);
//После можно прилепить ui вверх относительно родителя
rt.SetInsetAndSizeFromParentEdge(RectTransform.Edge.Top, 0.5f * (gameObject.transform.childCount - 2) * (rt.rect.height + 10), rt.rect.height);
//прилепить ui элемент вверх-слева относительно родителя
rt.SetInsetAndSizeFromParentEdge(RectTransform.Edge.Left, 0, rt.rect.height);
//изменить LEFT
rt.offsetMin = new Vector2(left, rt.offsetMin.y);
//изменить RIGHT
rt.offsetMax = new Vector2(right, rt.offsetMax.y);
//изменить TOP
rt.offsetMax = new Vector2(rt.offsetMax.x, top);
//изменить BOTTOM
rt.offsetMin = new Vector2(rt.offsetMin.x, bottom);