Unity3D - ошибка «Родитель имеет тип группы макетов» - PullRequest
0 голосов
/ 30 октября 2018

У меня есть простая структура внутри Canvas:

  • GameObject (группа вертикальной компоновки)
    • UI Image (группа вертикальной компоновки)
      • Текст TMP UGUI (группа горизонтальной разметки, подгонщик размера содержимого)

Теперь, это работает довольно хорошо, когда текст выходит за границы, UI-изображение расширяется. Но так как у меня есть Layout Group в качестве родителя для моего TMP Text, я получаю сообщение об ошибке внутри Text в Content Size Fitter, говоря, что «у родителя есть тип компонента группы макетов ...». В результате высота изображения иногда не обновляется при изменении текста (не увеличивается и не уменьшается, только после обновления или сохранения проекта).

enter image description here enter image description here

Я что-то здесь не так делаю?

1 Ответ

0 голосов
/ 30 октября 2018

Я преобразую это в ответ, так как я собираюсь прикрепить изображения. Я сделал нечто подобное для функции чата.

  1. Сделайте так, чтобы у родительского объекта был подгонщик размера контента, и установите горизонтальное или вертикальное подгонку в предпочтительный размер. ContentSizeFitter in Parent

  2. Пусть его непосредственный дочерний элемент будет фоном, и добавьте в него элемент макета, чтобы контролировать его минимальный размер. Также добавьте в него группу макетов, чтобы контролировать текст, который вы добавите в него в качестве дочернего элемента. BackgroundMinSize

  3. Добавить текст как дочерний элемент фона CurrentText

  4. Измените текст, чтобы проверить фон. ExpandedChild

[EDIT] 1. Я изменил группу макетов Родителя на VerticalLayoutGroup. 2. Я сделал копию игрового объекта «Фон», но с разными текстами, на которых вы можете видеть, как ContentSizeFitter и VerticalLayoutGroup контролируют размер детей. DuplicateGameObjects Result

На скриншотах выше я никогда ничего не настраивал в прямоугольном преобразовании. Я просто изменил текст, и, как вы можете видеть, фон каждого текста / диалога / сообщения также изменился.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...