API ReferenceLayout Values
MainAxisAlignment
Every main-axis distribution variant with layout examples.
use incular::prelude::*;
fn main() {
let values = [
MainAxisAlignment::Start,
MainAxisAlignment::End,
MainAxisAlignment::Center,
MainAxisAlignment::SpaceBetween,
MainAxisAlignment::SpaceAround,
MainAxisAlignment::SpaceEvenly,
];
println!("variants: {}", values.len());
println!(
"distributed: {}",
MainAxisAlignment::SpaceBetween.is_distributed()
);
}| Variant | Layout |
|---|---|
Start | Pack at the start (default) |
End | Pack at the end |
Center | Center as a group |
SpaceBetween | First/last flush, even gaps between |
SpaceAround | Even gaps with half-gaps at edges |
SpaceEvenly | Fully even gaps including edges |
use incular::prelude::*;
fn main() -> Result<(), Box<dyn std::error::Error>> {
let app = Application::new(|_cx| {
Container::builder()
.padding(EdgeInsets::all(24.0))
.alignment(Alignment::CENTER)
.child(
Row::builder()
.children(Vec::<Widget>::from([
Text::new("A").into(),
Text::new("B").into(),
Text::new("C").into(),
]))
.main_axis_alignment(MainAxisAlignment::SpaceEvenly)
.spacing(8.0)
.build(),
)
.build()
.into()
})?;
incular::run(app)?;
Ok(())
}