MeasureScope
interface MeasureScope : IntrinsicMeasureScope
The receiver scope of a layout's measure lambda. The return value of the
measure lambda is MeasureResult, which should be returned by layout
Summary
Public methods |
open MeasureResult |
Sets the size and alignment lines of the measured layout, as well as
the positioning block that defines the children positioning logic.
|
Inherited properties |
From class Density
Float |
density
The logical density of the display. This is a scaling factor for the Dp unit.
|
Float |
fontScale
Current user preference for the scaling factor for fonts.
|
|
|
Public methods
layout
open fun layout(
width: Int,
height: Int,
alignmentLines: Map<AlignmentLine, Int> = emptyMap(),
placementBlock: Placeable.PlacementScope.() -> Unit
): MeasureResult
Sets the size and alignment lines of the measured layout, as well as
the positioning block that defines the children positioning logic.
The placementBlock is a lambda used for positioning children. Placeable.placeAt should
be called on children inside placementBlock.
The alignmentLines can be used by the parent layouts to decide layout, and can be queried
using the Placeable.get operator. Note that alignment lines will be inherited by parent
layouts, such that indirect parents will be able to query them as well.