- добавить элемент UI\Text в визуальном списке
- удалить элемент UI\Text из визуального списка со смещением оставшихся элементов.
- появление ползунка UI\Scroll при большом количестве элементов

\n\n
UI/Canvas
Компонент Canvas представляет собой абстрактное пространство, в котором производится настройка и отрисовка UI.
Все UI-элементы должны быть потомками игровых объектов, к которым присоединен Canvas. Когда вы создаете UI-элемент из пункта меню (GameObject > Create UI), Canvas будет добавлен автоматически, если его нет в сцене

//загрузка ui префабаvar go = PrefabUtility.LoadPrefabContents(ФайлПрефаба);//после переноса объекта в родитель изменятся Scalego.transform.SetParent(gameObject.transform);//получение компонента Трансформация у элемента uivar rt = go.GetComponent<RectTransform>();//настройка центра элемента uirt.pivot = Vector2.zero;//масштаб элемента uirt.localScale = Vector3.one;//размеры ui элемента width,height,depthrt.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 по оси xrt.pivot = new Vector2(2,0);
//Растянуть ui элемент относительно родителя по оси xrt.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);
//изменить LEFTrt.offsetMin = new Vector2(left, rt.offsetMin.y);//изменить RIGHTrt.offsetMax = new Vector2(right, rt.offsetMax.y);//изменить TOPrt.offsetMax = new Vector2(rt.offsetMax.x, top); //изменить BOTTOMrt.offsetMin = new Vector2(rt.offsetMin.x, bottom);

var go=PrefabUtility.LoadPrefabContents(Application.dataPath+"/Resources/PREFABS/prefab_104515022021.prefab");go.transform.SetParent(GameObject.Find("Canvas_world").transform);//после переноса объекта в родитель изменятся Scalego.GetComponent<RectTransform>().localScale = Vector3.one;