Arrangement
object Arrangement
Used to specify the arrangement of the layout's children in layouts like Row
or Column
in the main axis direction (horizontal and vertical, respectively).
Below is an illustration of different horizontal arrangements in Row
s:
Different vertical arrangements in Column
s:
Summary
Nested types |
|
---|---|
Arrangement.Absolute |
|
Arrangement.Horizontal |
Used to specify the horizontal arrangement of the layout's children in layouts like |
Arrangement.HorizontalOrVertical |
Used to specify the horizontal arrangement of the layout's children in horizontal layouts like |
Arrangement.Vertical |
Used to specify the vertical arrangement of the layout's children in layouts like |
Public functions |
|
---|---|
Arrangement.Horizontal |
aligned(alignment: Alignment.Horizontal!) Place children horizontally one next to the other and align the obtained group according to an |
Arrangement.Vertical |
aligned(alignment: Alignment.Vertical!) Place children vertically one next to the other and align the obtained group according to an |
Arrangement.HorizontalOrVertical |
Place children such that each two adjacent ones are spaced by a fixed |
Arrangement.Horizontal |
spacedBy(space: Dp!, alignment: Alignment.Horizontal!) Place children horizontally such that each two adjacent ones are spaced by a fixed |
Arrangement.Vertical |
spacedBy(space: Dp!, alignment: Alignment.Vertical!) Place children vertically such that each two adjacent ones are spaced by a fixed |
Public properties |
|
---|---|
Arrangement.Vertical |
Place children vertically such that they are as close as possible to the bottom of the main axis. |
Arrangement.HorizontalOrVertical |
Place children such that they are as close as possible to the middle of the main axis. |
Arrangement.Horizontal |
Place children horizontally such that they are as close as possible to the end of the main axis. |
Arrangement.HorizontalOrVertical |
Place children such that they are spaced evenly across the main axis, including free space before the first child and after the last child, but half the amount of space existing otherwise between two consecutive children. |
Arrangement.HorizontalOrVertical |
Place children such that they are spaced evenly across the main axis, without free space before the first child or after the last child. |
Arrangement.HorizontalOrVertical |
Place children such that they are spaced evenly across the main axis, including free space before the first child and after the last child. |
Arrangement.Horizontal |
Place children horizontally such that they are as close as possible to the beginning of the horizontal axis (left if the layout direction is LTR, right otherwise). |
Arrangement.Vertical |
Place children vertically such that they are as close as possible to the top of the main axis. |
Public functions
aligned
fun aligned(alignment: Alignment.Horizontal!): Arrangement.Horizontal
Place children horizontally one next to the other and align the obtained group according to an alignment
.
Parameters | |
---|---|
alignment: Alignment.Horizontal! |
The alignment of the children inside the parent. |
aligned
fun aligned(alignment: Alignment.Vertical!): Arrangement.Vertical
Place children vertically one next to the other and align the obtained group according to an alignment
.
Parameters | |
---|---|
alignment: Alignment.Vertical! |
The alignment of the children inside the parent. |
spacedBy
fun spacedBy(space: Dp!): Arrangement.HorizontalOrVertical
Place children such that each two adjacent ones are spaced by a fixed space
distance across the main axis. The spacing will be subtracted from the available space that the children can occupy. The space
can be negative, in which case children will overlap.
Parameters | |
---|---|
space: Dp! |
The space between adjacent children. |
spacedBy
fun spacedBy(space: Dp!, alignment: Alignment.Horizontal!): Arrangement.Horizontal
Place children horizontally such that each two adjacent ones are spaced by a fixed space
distance. The spacing will be subtracted from the available width that the children can occupy. An alignment
can be specified to align the spaced children horizontally inside the parent, in case there is empty width remaining. The space
can be negative, in which case children will overlap.
Parameters | |
---|---|
space: Dp! |
The space between adjacent children. |
alignment: Alignment.Horizontal! |
The alignment of the spaced children inside the parent. |
spacedBy
fun spacedBy(space: Dp!, alignment: Alignment.Vertical!): Arrangement.Vertical
Place children vertically such that each two adjacent ones are spaced by a fixed space
distance. The spacing will be subtracted from the available height that the children can occupy. An alignment
can be specified to align the spaced children vertically inside the parent, in case there is empty height remaining. The space
can be negative, in which case children will overlap.
Parameters | |
---|---|
space: Dp! |
The space between adjacent children. |
alignment: Alignment.Vertical! |
The alignment of the spaced children inside the parent. |
Public properties
Bottom
val Bottom: Arrangement.Vertical
Place children vertically such that they are as close as possible to the bottom of the main axis. Visually: (top) ####123 (bottom)
Center
val Center: Arrangement.HorizontalOrVertical
Place children such that they are as close as possible to the middle of the main axis. Visually: ##123## for LTR and ##321## for RTL.
End
val End: Arrangement.Horizontal
Place children horizontally such that they are as close as possible to the end of the main axis. Visually: ####123 for LTR and 321#### for RTL.
SpaceAround
val SpaceAround: Arrangement.HorizontalOrVertical
Place children such that they are spaced evenly across the main axis, including free space before the first child and after the last child, but half the amount of space existing otherwise between two consecutive children. Visually: #1##2##3# for LTR and #3##2##1# for RTL
SpaceBetween
val SpaceBetween: Arrangement.HorizontalOrVertical
Place children such that they are spaced evenly across the main axis, without free space before the first child or after the last child. Visually: 1##2##3 for LTR or 3##2##1 for RTL.
SpaceEvenly
val SpaceEvenly: Arrangement.HorizontalOrVertical
Place children such that they are spaced evenly across the main axis, including free space before the first child and after the last child. Visually: #1#2#3# for LTR and #3#2#1# for RTL.
Start
val Start: Arrangement.Horizontal
Place children horizontally such that they are as close as possible to the beginning of the horizontal axis (left if the layout direction is LTR, right otherwise). Visually: 123#### for LTR and ####321.
Top
val Top: Arrangement.Vertical
Place children vertically such that they are as close as possible to the top of the main axis. Visually: (top) 123#### (bottom)