Как изменить направление расширения вертикальной компоновки группы unity3d?
Когда я добавляю новые элементы в группу вертикальной компоновки и когда в них больше нет места, группа вертикальной компоновки начинает расширяться вниз. Как сделать так, чтобы они складывались сверху друг от друга?
Чего я хочу:
- 4-й элемент
- 3-й элемент
- 2-й элемент
- 1-й элемент
Первый элемент всегда внизу, следующие элементы появляются сверху.
Благодарю.
6 ответов
Хорошо, я нашел одно решение. ИДК, если это правильно, но это самый простой. Просто нужно повернуть "Rect tranform" на 180 градусов. Решение в изображении
Видео результата: гугл диск.
В группе Вертикальный макет(компонент) вы можете изменить дочернее выравнивание на верхний центр.
Поворот всего элемента пользовательского интерфейса не очень хорошая идея (может вызвать сильную головную боль в дальнейшем), и поскольку этот поток - первое, что возникло во время игры, я решил, что мне следует оставить это здесь для будущих разработчиков.
Самый простой способ - предполагая, что вы используете сценарий для добавления объектов к родительскому элементу - просто назначить дочерний индекс в сценарии, чтобы каждая новая запись отображалась над последней, а не ниже.
Документацию можно найти здесь: https://docs.unity3d.com/ScriptReference/Transform.SetSiblingIndex.html .
Я нашел способ сделать это, и он сработал у меня в Unity 2020.
В родительском элементе с группой вертикального макета установите дочернее выравнивание по верхнему центру и установите для поворота под преобразованием прямоугольника значение 0,5 1. Это фиксирует его на месте и порождает последний элемент в порядке убывания.
yourGameObject.transform.SetAsFirstSibling(); is the solution.
Может быть сделано в конце других действий преобразования.
button.transform.parent = ServerMessagesContent.transform;
button.transform.position = ServerMessagesContent.transform.position;
button.transform.SetAsFirstSibling();
Вращение - это наихудший вариант, который я могу сделать, чтобы мои вещи появлялись снизу вверх, и выравнивание по дочернему элементу не поможет вам вместо этого составить список, поместить все вещи, которые нужно создать, и перевернуть список и порождать. Это сработало для меня