Im Vergleich zu UIListLayout , UIGridLayout und UITableLayout ermöglichen mehr strukturierte und organisierte Layouts.Diese sind am besten geeignet für Schnittstellen wie ein Shop-Inventar, bei dem jedes Element in einem Gitter mit gleich großen Kacheln dargestellt werden kann, oder Artikel können in verwandten Zeilen/Spalten sortiert werden.
Gitternetz-Layout
UIGridLayout Positionen Geschwister GuiObjects in einem Gitter von einheitlichen Zellen derselben Größe innerhalb ihres Elterncontainers.Zellen werden durch Zeile oder Spalte basierend auf dem Layout hinzugefügt FillDirection, bis die nächste Zelle nicht passt, dann beginnt eine neue Zeile oder Spalte.Für weitere Kontrolle kannst du die Eigenschaft FillDirectionMaxCells verwenden, um die maximale Anzahl von Zellen pro Zeile oder Spalte festzulegen.


Standardmäßig sind UIGridLayout Positionen der Geschwister GuiObjects in der Reihenfolge ihrer LayoutOrder, wo niedrigere Werte vor höheren Werte gehen, und gleichwertige Werte sortieren sich nach der Reihenfolge, in der du sie hinzugefügt hast.Wenn du das Layout von SortOrder auf Enum.SortOrder.Name änderst, werden die Geschwister in alphabetischer Reihenfolge sortiert.
Tabelle-Layout
UITableLayout Positionen Bruder GuiObjects und ihre Kinder in Tabellenformat.Die Standard FillDirection von Vertical bedeutet, dass Geschwister zuerst in Zeilen positioniert werden und die Kinder dieser Geschwister horizontal positioniert werden, um Säulen zu bilden, sodass jede Zelle innerhalb einer Zeile die gleiche Höhe hat und jede Zelle innerhalb einer Säule die gleiche Breite hat.


Dieses Muster imitiert die Standard-HTML-Zeil/Säulenstruktur:
<table><tbody><tr><!-- Row1 --><td>Label 1</td> <!-- TextLabel1 --><td>Label 2</td> <!-- TextLabel2 --><td>Label 3</td> <!-- TextLabel3 --></tr><tr><!-- Row2 --><td>Label 4</td> <!-- TextLabel4 --><td>Label 5</td> <!-- TextLabel5 --><td>Label 6</td> <!-- TextLabel6 --></tr><tr><!-- Row3 --><td>Label 7</td> <!-- TextLabel7 --><td>Label 8</td> <!-- TextLabel8 --><td>Label 9</td> <!-- TextLabel9 --></tr></tbody></table>
Wenn du die Eigenschaften des Layouts FillEmptySpaceColumns oder FillEmptySpaceRows nicht aktivierst, bestimmt die Größe des Geschwisters GuiObjects die Dimensionen der Zellen.Zum Beispiel erstellt ein TextLabel der Größe UDim2.new(0.25, 0, 0.1, 0) eine Tabellenzelle mit 25% Breite und 10% Höhe innerhalb des übergeordneten Containers.