MeasurementLayoutManager

A parent layout manager that interprets its children's ParentLayoutElements.

The runtime gives a manager the child's folded parentData and all remaining parent-layout elements in one call, after the child has been added to the parent. It leaves out an inheritable element whose protocol refuses this parent. It calls again when either declaration changes, without removing and adding the child, so implementations retain whatever per-child state belongs to the component. elements are in modifier declaration order, outermost first. Every ParentLayoutNode among them is attached: the runtime calls again as one detaches, before it runs another node of the child's modifier.

A layout manager that does not implement this interface receives ordinary LayoutManager2 parent-data registration and cannot accept remaining parent-layout elements.

Types

Link copied to clipboard
object Companion

Factory for tokens interpreted by a MeasurementLayoutManager.

Functions

Link copied to clipboard
abstract fun addLayoutComponent(p0: String?, p1: Component?)
abstract fun addLayoutComponent(p0: Component?, p1: Any?)
Link copied to clipboard
abstract fun declareComponentLayout(component: Component, parentData: Any?, elements: List<ParentLayoutElement>)

Declares how component is placed and measured by this parent.

Link copied to clipboard
abstract fun getLayoutAlignmentX(p0: Container?): Float
Link copied to clipboard
abstract fun getLayoutAlignmentY(p0: Container?): Float
Link copied to clipboard
abstract fun invalidateLayout(p0: Container?)
Link copied to clipboard
abstract fun layoutContainer(p0: Container?)
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
abstract fun removeLayoutComponent(p0: Component?)