Corrija 'FlowLayoutGroup' no Unity3D, conforme HorizontalLayoutGroup etc.
Diga que você quer comumnivelar o fluxo esquerdo na interface do usuário do Unity. Exemplos:
De fato, para responderEssa questão Eu já consegui o fluxo esquerdo nivelado "da maneira mais difícil". Defina um "grupo vertical de linhas" no autolayout do Unity, anexe o FattieFlow no nível superior,
public class FattieFlow : MonoBehaviour
{
public GameObject modelRow;
public GameObject modelItem;
public void Flow()
{
screen = GetComponent<RectTransform>().rect.width;
// move downwards any which need to be moved downwards
int row = 0;
while (row < transform.childCount) // (dynamic)
{
if (transform.GetChild(row).gameObject.activeSelf) FlowRow(row);
++row;
}
// et cetera....
}
}
FattieFlow
irá re-fluir completamente para a esquerda (manipulando as linhas da maneira mais difícil). Aqui está um script, demo, etc:o jeito difícil.
Mas essa é uma solução ruim.
Idealmente, começando comUI.HorizontalLayoutGroup eUI.VerticalLayoutGroup deve ser possível criar
FlowLayoutGroup
que estabelece, nivelado à esquerda, em um bloco. (E, de fato, ele deve expandir, e assim por diante, o bloco conforme necessário ... exatamente comoHorizontalLayoutGroup
comporta-se).
Parece que você teria que começar comHorizontalOrVerticalLayoutGroup
e trabalhar a partir daí.
Como alguém faria isso (se nãojá existe)?