Dire che si desidera il normale flusso nello stream in Unity UI. Esempi:Correggere 'FlowLayoutGroup' in Unity3D, come HorizontalLayoutGroup ecc.
Infatti, per rispondere THIS question ho già raggiunto il flusso di sinistro a filo "nel modo più duro". Definire un "gruppo verticale di righe" in Unity autolayout, collegare FattieFlow al livello superiore,
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
sarà completamente ri-flusso a filo-sinistra (manipolando le linee, nel modo più difficile). Ecco uno script, demo, ecc: the hard way.
Ma questa è una soluzione scadente.
Idealmente, iniziando con UI.HorizontalLayoutGroup e UI.VerticalLayoutGroup dovrebbe essere possibile creare
FlowLayoutGroup
cui dispone, allineati a sinistra, in un blocco. (E in effetti dovrebbe espandersi, e così via, il blocco come richiesto ... esattamente come HorizontalLayoutGroup
si comporta).
Sembrerebbe che tu debba iniziare con HorizontalOrVerticalLayoutGroup
e lavorare da lì.
Come si dovrebbe fare questo (se non esiste già esistente)?
Il termine per questo tipo di layout è chiamato solo "Layout flusso" (vedere [FlowLayoutPanel] (https://msdn.microsoft.com/en-us/library/system.windows.forms.flowlayoutpanel (v = vs .110) .aspx) da Winforms) o "Wrap layout" (Vedi [WrapPanel] (https://msdn.microsoft.com/en-us/library/system.windows.controls.wrappanel (v = vs.100) .aspx) da WPF), se stai cercando un nome migliore di "FlushLeftLayoutGroup" (ho in mente di risolvere il problema quando ho del tempo libero perché penso che sia una domanda interessante ma non so quando sarà) –
@Joe Blow. Non ho mai fatto nulla del genere ma darò un'occhiata. Tornerò quando avrò qualcosa – Programmer
Immagino che possa essere fatto facilmente usando 'GridLayoutGroup' insieme ai componenti' ContentSizeFitter' e 'LayoutElement'. Ho fatto una cosa simile ma non esattamente così. Avrà uno sguardo nel tempo libero –