Не так давно я ещё выравнивал UI элементы вручную. Сейчас я уже знаю про компоненты Vertical/Horizontal Layout Group, которые позволяют автоматически расположить элементы в столбик или в ряд, ровненько и с отступами. А если добавить к этому Content Size Fitter (
Fit = Preferred Size), то Layout сам отресайзится под оптимальный размер. В том числе, это работает, если внутри будут TMP Text объекты, их ширина тоже будет контролироваться Layout'ом (не забудьте в Layout Group галочку Control Child Size/Width).Сложно становится, если рядом с надписью нужно вставить картинку. Создавать родительский элемент для текста и картинки не вариант, в этом случае Layout перестанет управлять шириной текста (который может быть разной длины, например количество 1 или 999).
Решение следующее: засовываем Image внутрь TMP Text'а. Привязываем его к нужному краю (
Anchors), а самому тексту добавляем боковой margin с учётом ширины иконки и необходимого отступа между картинкой и текстом.#ui
