pub enum Flex {
Block(u16),
Grow(u16),
}Expand description
Control how much each child of a stack component grows.
For example:
#[component(Root)]
fn render() {
render! {
VStack(flex: [1, 2, 3]) {
Section(title: "small")
Section(title: "medium")
Section(title: "large")
}
}
}will render a vertical stack of three Section components. The bottom one
will be 3 times the height of the top one, and the middle one will be 2 times the height
of the top one, as shown in the VStack docs.
When using the flex parameter to VStack and HStack, providing a value
of type [u16; N], will assume that Flex::Grow is intended, therefore making
all dimensions relative. In order to have absolute height or width for a child, provide a
value of type [Flex; N] to the flex parameter. For example,
#[component(Root)]
fn render() {
render! {
VStack(flex: [Block(3), Grow(1), Block(3)]) {
Section(title: "absolute")
Section(title: "relative")
Section(title: "absolute")
}
}
}Variants§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Flex
impl RefUnwindSafe for Flex
impl Send for Flex
impl Sync for Flex
impl Unpin for Flex
impl UnwindSafe for Flex
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