Layout/Grouping
By nesting elements within layouts/groupings, you are able to easily group elements together in-game. It allows for adjusting/moving them together, uniform padding and additional visual flair possibilities.
Each layout element has its own attributes specific to its type. Additionally, elements within a layout are subject to common common layout element attributes.
Element Summary
Layout Summary
Element Name |
Description |
|
<Panel></Panel> |
A "window" in which elements can be confined. |
|
<HorizontalLayout></HorizontalLayout> |
A horizontal row of elements. |
|
<VerticalLayout></VerticalLayout> |
A vertical column of elements. |
|
<GridLayout></GridLayout> |
A grid of elements. |
|
<TableLayout></TableLayout> |
A layout element based on HTML tables, allowing you to specify the position of elements in specific rows/columns. |
|
<Row></Row> |
A row within a TableLayout. |
|
<Cell></Cell> |
A cell within a TableLayout. |
|
Element Name |
Description |
|
<HorizontalScrollView></HorizontalScrollView> |
A scrollable horizontal row of elements. |
|
<VerticalScrollView></VerticalScrollView> |
A scrollable vertical column of elements. |
|
Layout Element Details
Layout Details
Panel
A "window" in which elements can be confined.
Attribute Name |
Description |
Type / Options |
Default Value |
padding |
Specifies the padding for this panel. Please note that if padding is specified, the panel will function as a LayoutGroup (which it does not do by default). |
float(left) float(right) float(top) float(bottom) |
(none) |
<Panel>
<Text>Text contained within Panel</Text>
</Panel>
HorizontalLayout
A horizontal row of elements.
Attribute Name |
Description |
Type / Options |
Default Value |
padding |
|
float(left) float(right) float(top) float(bottom) |
0 0 0 0 |
spacing |
Spacing between child elements. |
float |
0 |
childAlignment |
|
- UpperLeft
- UpperCenter
- UpperRight
- MiddleLeft
- MiddleCenter
- MiddleRight
- LowerLeft
- LowerCenter
- LowerRight
|
UpperLeft |
childForceExpandWidth |
|
|
true |
childForceExpandHeight |
|
|
true |
<HorizontalLayout>
<Button>Button One</Button>
<Button>Button Two</Button>
<Button>Button Three</Button>
</HorizontalLayout>
VerticalLayout
A vertical column of elements.
Attribute Name |
Description |
Type / Options |
Default Value |
padding |
|
float(left) float(right) float(top) float(bottom) |
0 0 0 0 |
spacing |
Spacing between child elements. |
float |
0 |
childAlignment |
|
- UpperLeft
- UpperCenter
- UpperRight
- MiddleLeft
- MiddleCenter
- MiddleRight
- LowerLeft
- LowerCenter
- LowerRight
|
UpperLeft |
childForceExpandWidth |
|
|
true |
childForceExpandHeight |
|
|
true |
<VerticalLayout>
<Button>Button One</Button>
<Button>Button Two</Button>
<Button>Button Three</Button>
</VerticalLayout>
GridLayout
A grid of elements.
Attribute Name |
Description |
Type / Options |
Default Value |
padding |
|
float(left) float(right) float(top) float(bottom) |
0 0 0 0 |
spacing |
Spacing between child elements |
float(x) float(y) |
0 0 |
cellSize |
|
float(x) float(y) |
100 100 |
startCorner |
|
- UpperLeft
- UpperRight
- LowerLeft
- LowerRight
|
UpperLeft |
startAxis |
|
|
Horizontal |
childAlignment |
|
- UpperLeft
- UpperCenter
- UpperRight
- MiddleLeft
- MiddleCenter
- MiddleRight
- LowerLeft
- LowerCenter
- LowerRight
|
UpperLeft |
constraint |
|
- Flexible
- FixedColumnCount
- FixedRowCount
|
Flexible |
constraintCount |
|
integer |
2 |
<GridLayout>
<Button>Button One</Button>
<Button>Button Two</Button>
<Button>Button Three</Button>
</GridLayout>
TableLayout
A layout element based on HTML tables, allowing you to specify the position of elements in specific rows/columns.
Attribute Name |
Description |
Type / Options |
Default Value |
padding |
|
float(left) float(right) float(top) float(bottom) |
0 0 0 0 |
cellSpacing |
Spacing between each cell. |
float |
0 |
columnWidths |
(Optional) Explicitly set the width of each column. Use a value of 0 to auto-size a specific column. |
float list - e.g. '32 0 0 32' |
(none) |
automaticallyAddColumns |
If more cells are added to a row than are accounted for by columnWidths, should this TableLayout automatically add one or more new auto-sized entries (0) to columnWidths? |
|
true |
automaticallyRemoveEmptyColumns |
If there are more entries in columnWidths than there are cells in any row, should this TableLayout automatically remove entries from columnWidths until their are no 'empty' columns? |
|
true |
autoCalculateHeight |
If set to true, then the height of this TableLayout will automatically be calculated as the sum of each rows preferredHeight value. This option cannot be used without explicitly sized rows. |
|
false |
useGlobalCellPadding |
If set to true, then all cells will use this TableLayout's cellPadding value. |
|
true |
cellPadding |
Padding for each cell. |
float(left) float(right) float(top) float(bottom) |
0 0 0 0 |
cellBackgroundImage |
Image to use as the background for each cell. |
string |
|
cellBackgroundColor |
Color for each cells background. |
|
rgba(1,1,1,0.4) |
rowBackgroundImage |
Image to use as the background for each row. |
string |
|
rowBackgroundColor |
Color to use for each rows background. |
|
clear |
<TableLayout>
<!-- Row 1 -->
<Row>
<Cell><Button>Button One</Button></Cell>
<Cell><Button>Button Two</Button></Cell>
</Row>
<!-- Row 2 -->
<Row>
<Cell><Button>Button One</Button></Cell>
<Cell><Button>Button Three</Button></Cell>
</Row>
</TableLayout>
Row
A row within a TableLayout.
Attribute Name |
Description |
Type / Options |
Default Value |
preferredHeight |
Sets the height for this row. Use a value of '0' to specify that this row should be auto-sized. |
float |
0 |
dontUseTableRowBackground |
If set to true, then this row will ignore the tables' rowBackgroundImage and rowBackgroundColor values, allowing you to override those values for this row. |
|
false |
Cell
A cell within a TableLayout.
Attribute Name |
Description |
Type / Options |
Default Value |
columnSpan |
__ |
int |
1 |
dontUseTableCellBackground |
If set to true, then this cell will ignore the tables' cellBackgroundImage and values, allowing you to override those values for this cell. |
|
false |
overrideGlobalCellPadding |
If set to true, then this cell will ignore the tables' cellPadding value, allowing you to set unique cell padding for this cell. |
|
false |
padding |
Padding values to use for this cell if overrideGlobalCellPadding is set to true. |
float(left) float(right) float(top) float(bottom) |
0 0 0 0 |
childForceExpandWidth |
|
|
true |
childForceExpandHeight |
|
|
true |
A scrollable horizontal row of elements. This is an input element.
A layout element such as a Panel, HorizontalLayout, GridLayout, or TableLayout can be used to position child elements within the Scroll View.
Attribute Name |
Description |
Type / Options |
Default Value |
onValueChanged |
When a selection is made, its name is sent to a function with this name. |
string |
(none) |
horizontal |
|
|
true |
vertical |
|
|
false |
movementType |
|
- Unrestricted
- Elastic
- Clamped
|
Clamped |
elasticity |
|
float |
0.1 |
inertia |
|
|
true |
decelerationRate |
|
float |
0.135 |
scrollSensitivity |
|
float |
1 |
horizontalScrollbarVisibility |
|
- Permanent
- AutoHide
- AutoHideAndExpandViewport
|
AutoHide |
verticalScrollbarVisibility |
|
- Permanent
- AutoHide
- AutoHideAndExpandViewport
|
(none) |
noScrollbars |
If set to true, then this scroll view will have no visible scrollbars. |
|
false |
scrollbarBackgroundColor |
|
|
#FFFFFF |
scrollbarColors |
|
|
#FFFFFF|#FFFFFF|#C8C8C8|rgba(0.78,0.78,0.78,0.5) |
scrollbarImage |
|
string |
|
<HorizontalScrollView>
<HorizontalLayout>
<Panel>
<Text>1</Text>
</Panel>
<Panel>
<Text>2</Text>
</Panel>
<Panel>
<Text>3</Text>
</Panel>
<Panel>
<Text>4</Text>
</Panel>
</HorizontalLayout>
</HorizontalScrollView>
A scrollable vertical column of elements. This is an input element.
A layout element such as a Panel, HorizontalLayout, GridLayout, or TableLayout can be used to position child elements within the Scroll View.
Attribute Name |
Description |
Type / Options |
Default Value |
onValueChanged |
When a selection is made, its name is sent to a function with this name. |
string |
(none) |
horizontal |
|
|
false |
vertical |
|
|
true |
movementType |
|
- Unrestricted
- Elastic
- Clamped
|
Clamped |
elasticity |
|
float |
0.1 |
inertia |
|
|
true |
decelerationRate |
|
float |
0.135 |
scrollSensitivity |
|
float |
1 |
horizontalScrollbarVisibility |
|
- Permanent
- AutoHide
- AutoHideAndExpandViewport
|
(none) |
verticalScrollbarVisibility |
|
- Permanent
- AutoHide
- AutoHideAndExpandViewport
|
AutoHide |
noScrollbars |
If set to true, then this scroll view will have no visible scrollbars. |
|
false |
scrollbarBackgroundColor |
|
|
#FFFFFF |
scrollbarColors |
|
|
#FFFFFF|#FFFFFF|#C8C8C8|rgba(0.78,0.78,0.78,0.5) |
scrollbarImage |
|
string |
|
<VerticalScrollView>
<VerticalLayout>
<Panel>
<Text>1</Text>
</Panel>
<Panel>
<Text>2</Text>
</Panel>
<Panel>
<Text>3</Text>
</Panel>
<Panel>
<Text>4</Text>
</Panel>
</VerticalLayout>
</VerticalScrollView>