⌂
›
Widgets
›
Stack
Stack
Layer controls on top of each other.
Example
stack(
children: [
container(width: 220, height: 140, bgcolor: "#1f2937"),
container(width: 120, height: 48, bgcolor: "#0ea5e9")
]
)
Common properties
childrenexpandwidthheight
Usage
Use stack for overlays, badges, or layered presentation:
stack(
children: [
image("https://picsum.photos/320/180", width: 320, height: 180),
container(
padding: 8,
bgcolor: "#111827cc",
content: text(value: "Preview")
)
]
)
Notes
- Child order matters because later controls render on top
Complete API
Helpers
stack(children = ..., **props, &block)
Accepted properties
adaptive— Adapts to the platform (Material/Cupertino) when true.align— Alignment of the control within its parent.alignment— Alignment of the content within the control.animate_align— Animates alignment changes.animate_margin— Animates margin changes.animate_offset— Animates offset changes.animate_opacity— Animates opacity changes.animate_position— Animates position changes.animate_rotation— Animates rotation changes.animate_scale— Animates scale changes.animate_size— Animates size changes.aspect_ratio— Width-to-height ratio to maintain.badge— Badge drawn on the corner of the control.bottom— Bottom offset when positioned inside a stack.clip_behavior— How content overflowing the bounds is clipped.col— Responsive column span (1-12) per breakpoint.controls— The list of child controls.data— Arbitrary value you can attach to the control and read back in handlers.disabled— Disables interaction when true.expand— Fills the available space along the parent's main axis when true.expand_loose— Like expand, but only grows up to the child's natural size.fit— Sets the fit property.height— Fixed height in logical pixels.key— Stable identity used to preserve state across rebuilds.left— Left offset when positioned inside a stack.margin— Outer spacing around the control.offset— Translation offset applied to the control.opacity— Opacity from 0.0 (transparent) to 1.0 (opaque).right— Right offset when positioned inside a stack.rotate— Rotation applied to the control.rtl— Renders right-to-left when true.scale— Scale transform applied to the control.size_change_interval— Throttle interval for on_size_change, in ms.tooltip— Text shown on hover/long-press.top— Top offset when positioned inside a stack.visible— Hides the control when false.width— Fixed width in logical pixels.
Events
on_animation_end— Fired when an animation completes.on_size_change— Fired when the control's size changes.
Wire reference
- Family:
shared - Widget type:
stack