build method
Implementation
@override
Widget build(BuildContext context) {
return ResponsiveBuilder(
builder: (
BuildContext context,
ResponsiveSize responsiveSize,
) {
List<Widget> columnChildren = <Widget>[];
int total = 0;
double minHeight = -1;
List<Widget> rowChildren = <Widget>[];
for (final Responsive child in children) {
int size = child.responsiveSize(responsiveSize);
if (size > 0) {
if (total + size > maxColumns) {
columnChildren.add(_createRow(rowChildren, minHeight));
rowChildren = <Widget>[];
total = 0;
minHeight = -1;
}
if (child.safeMinHeight > minHeight) {
minHeight = child.safeMinHeight;
}
total += size;
rowChildren.add(
Flexible(
flex: size,
child: padding != null
? Padding(
padding: padding!,
child: child,
)
: child,
),
);
}
}
if (rowChildren.isNotEmpty) {
columnChildren.add(_createRow(rowChildren, minHeight));
}
return ChildBuilder(
child: Column(
children: columnChildren,
),
builder: (BuildContext context, Widget child) =>
margin == null ? child : Padding(padding: margin!, child: child),
);
},
);
}