pub struct Spacer { /* private fields */ }Expand description
A flexible space that expands to push views apart.
Spacer adapts to its parent container: in HStack it expands horizontally,
in VStack it expands vertically. Use it to push views to opposite edges
or distribute space evenly.
§Layout Behavior
- In
HStack: Expands horizontally only - In
VStack: Expands vertically only - In
ZStack: No expansion (falls back to minimum length)
§Examples
use waterui::layout::spacer::spacer_min;
use waterui::prelude::*;
// Push button to trailing edge
hstack((
text("Title"),
spacer(),
button("Done").action(|| {}),
));
// Center content with equal spacing
hstack((spacer(), text("Centered"), spacer()));
// Spacer with minimum length (never shrinks below 20pt)
spacer_min(20.0);Implementations§
Trait Implementations§
Source§impl From<Spacer> for SpacerLayout
impl From<Spacer> for SpacerLayout
Source§impl NativeView for Spacer
impl NativeView for Spacer
Source§fn stretch_axis(&self) -> StretchAxis
fn stretch_axis(&self) -> StretchAxis
Which axis (or axes) this view stretches to fill available space.
impl StructuralPartialEq for Spacer
Auto Trait Implementations§
impl Freeze for Spacer
impl RefUnwindSafe for Spacer
impl Send for Spacer
impl Sync for Spacer
impl Unpin for Spacer
impl UnsafeUnpin for Spacer
impl UnwindSafe for Spacer
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IdentifiableExt for T
impl<T> IdentifiableExt for T
Source§impl<V> PositionExt for Vwhere
V: View,
impl<V> PositionExt for Vwhere
V: View,
Source§fn position(
self,
x: impl IntoSignalF32,
y: impl IntoSignalF32,
) -> PositionedChild<Self>
fn position( self, x: impl IntoSignalF32, y: impl IntoSignalF32, ) -> PositionedChild<Self>
Position view’s center at absolute (x, y) coordinates. Read more
Source§fn position_anchor(
self,
anchor: UnitPoint,
x: impl IntoSignalF32,
y: impl IntoSignalF32,
) -> PositionedChild<Self>
fn position_anchor( self, anchor: UnitPoint, x: impl IntoSignalF32, y: impl IntoSignalF32, ) -> PositionedChild<Self>
Position view’s anchor point at absolute coordinates. Read more
Source§fn position_in(self, position: UnitPoint) -> PositionedChild<Self>
fn position_in(self, position: UnitPoint) -> PositionedChild<Self>
Position view’s center at fractional location in parent. Read more
Source§fn position_in_anchor(
self,
anchor: UnitPoint,
position: UnitPoint,
) -> PositionedChild<Self>
fn position_in_anchor( self, anchor: UnitPoint, position: UnitPoint, ) -> PositionedChild<Self>
Position view’s anchor at fractional location in parent. Read more
Source§fn position_in_offset(
self,
anchor: UnitPoint,
position: UnitPoint,
offset_x: impl IntoSignalF32,
offset_y: impl IntoSignalF32,
) -> PositionedChild<Self>
fn position_in_offset( self, anchor: UnitPoint, position: UnitPoint, offset_x: impl IntoSignalF32, offset_y: impl IntoSignalF32, ) -> PositionedChild<Self>
Position with fractional location plus offset. Read more
Source§fn pin(self, constraints: PinConstraints) -> PositionedChild<Self>
fn pin(self, constraints: PinConstraints) -> PositionedChild<Self>
Position using edge pins and optional explicit size. Read more