HorizontalRuler

Class

Common
class HorizontalRuler private constructor(calculation: (PlacementScope.(Float) -> Float)?) :
    Ruler(calculation)

A horizontal Ruler. Defines a line that can be used by parent layouts to align or position their children vertically. The position of the ruler can be retrieved with Placeable.PlacementScope.current and can be set with MeasureScope.layout using RulerScope.provides.

Secondary Constructors

constructor() : this(null)

Creates a HorizontalRuler whose values are directly provided. The developer can set the ruler value in MeasureScope.layout using RulerScope.provides or RulerScope.providesRelative.

Companion Object

Methods

Common
fun maxOf(vararg rulers: HorizontalRuler) = HorizontalRuler { defaultValue ->
            mergeRulerValues(true, rulers, defaultValue)
        }

Creates a HorizontalRuler derived from the greater value of all HorizontalRulers in rulers that supply a value. This is the right-most of all provided ruler values.

Common
fun minOf(vararg rulers: HorizontalRuler) = HorizontalRuler { defaultValue ->
            mergeRulerValues(false, rulers, defaultValue)
        }

Creates a HorizontalRuler derived from the least value of all HorizontalRulers in rulers that supply a value. This is the left-most of all provided ruler values.

Common
fun derived(calculation: PlacementScope.(defaultValue: Float) -> Float) =
            HorizontalRuler(calculation)

Creates a HorizontalRuler whose values are derived from values available in the PlacementScope, such as other HorizontalRulers.

Parameters

calculationA function that calculates the value of the ruler