build method
构建Flex组件 - 只负责布局,不含视觉样式
Implementation
Widget build() {
// 先处理order排序,再处理gap间距
List<Widget> orderedChildren = _buildOrderedChildren();
List<Widget> childrenWithGap = _buildChildrenWithGap(orderedChildren);
if (_direction == Axis.horizontal) {
return Row(
mainAxisAlignment: _mainAxisAlignment,
crossAxisAlignment: _crossAxisAlignment,
mainAxisSize: _mainAxisSize,
textDirection: _textDirection,
verticalDirection: _verticalDirection,
children: childrenWithGap,
);
} else {
return Column(
mainAxisAlignment: _mainAxisAlignment,
crossAxisAlignment: _crossAxisAlignment,
mainAxisSize: _mainAxisSize,
textDirection: _textDirection,
verticalDirection: _verticalDirection,
children: childrenWithGap,
);
}
}