API ReferenceNavigation & Scrolling
Sliver Groups
Main-axis, cross-axis, and constrained sliver composition.
use incular::prelude::*;
fn main() {
let app = Application::new(|_cx| {
Container::builder()
.padding(EdgeInsets::all(24.0))
.alignment(Alignment::CENTER)
.child(
CustomScrollView::new(vec![
Box::new(SliverMainAxisGroup::new(vec![
Box::new(SliverToBoxAdapter::new(Text::new("A")))
as Box<dyn Sliver>,
Box::new(SliverToBoxAdapter::new(Text::new("B")))
as Box<dyn Sliver>,
])) as Box<dyn Sliver>,
Box::new(SliverCrossAxisExpanded::new(
2,
SliverToBoxAdapter::new(Text::new("Wide")),
)) as Box<dyn Sliver>,
]),
)
.build()
.into()
})
.expect("valid application");
incular::run(app).expect("run application");
}Groups compose multiple slivers along one axis inside a single viewport; constrained and expanded wrappers control cross-axis shares.
| Group | Composition |
|---|---|
SliverMainAxisGroup | Stack slivers along the main axis |
SliverCrossAxisGroup | Arrange slivers across the axis |
SliverCrossAxisExpanded | Proportional cross-axis share (flex >= 1) |
SliverConstrainedCrossAxis | Max cross extent cap |
Related: CustomScrollView.