У меня проблемы с позиционированием и перемещением элементов на холсте Unity по коду, поскольку абсолютные расстояния, как правило, зависят от размера экрана.Итак, если я хочу сделать определенную точку на экране доступной для кода (т.е. переместить определенный элемент пользовательского интерфейса в эту точку), я использую этот обходной путь:
1) В редакторе я создаю небольшую «вспомогательную»панель (на том же уровне иерархии, что и элемент, который я хочу переместить), поместите его в нужную позицию и отключите его изображение.
2) Затем, чтобы переместить элемент, я использую этот код (примерно):
Vector2 pos = auxiliaryPanel.GetComponent<RectTrasform>().localPosition;
element.GetComponent<RectTrasform>().localPosition = pos;
Проблема в том, что я хочу закрыть несколько позиций на экране.Тогда мне просто нужно несколько вспомогательных панелей :) Есть идеи для более чистого или более удобного решения?