Loading...
Loading...
Builds Flutter layouts using the constraint system and layout widgets. Use when creating or refining the UI structure of a Flutter application.
npx skill4agent add flutter/skills flutter-building-layoutsxydouble.infinityRowColumnListViewRowColumnRowColumnmainAxisAlignmentcrossAxisAlignmentExpandedFlexibleRowColumnExpandedFlexibleContainerContainerStackStackPositionedStackSizedBoxSizedBoxwidthheightLayoutBuilderExpandedFlexibleStackListViewSingleChildScrollViewListViewColumnScaffoldExpandedListViewColumnColumnListView// BAD: Throws unbounded height exception
Column(
children: [
Text('Header'),
ListView(
children: [/* items */],
),
],
)ListViewExpandedColumn// GOOD: ListView is constrained to remaining space
Column(
children: [
Text('Header'),
Expanded(
child: ListView(
children: [/* items */],
),
),
],
)LayoutBuilderWidget buildAdaptiveLayout(BuildContext context) {
return LayoutBuilder(
builder: (context, constraints) {
// Conditional logic based on screen width
if (constraints.maxWidth > 600) {
// Tablet/Desktop: Side-by-side layout
return Row(
children: [
SizedBox(width: 250, child: SidebarWidget()),
Expanded(child: MainContentWidget()),
],
);
} else {
// Mobile: Stacked layout with navigation
return Column(
children: [
Expanded(child: MainContentWidget()),
BottomNavigationBarWidget(),
],
);
}
},
);
}