import 'package:flutter/material.dart'; /// create by 张风捷特烈 on 2020/4/30 /// contact me by email 1981462002@qq.com /// 说明: // { // "widgetId": 94, // "name": 'Flex主轴对齐方式', // "priority": 2, // "subtitle": // "【mainAxisAlignment】 : 主轴对齐 【MainAxisAlignment】", // } class MainAxisAlignmentFlex extends StatelessWidget { static TextStyle textStyle = TextStyle(color: Colors.white, fontWeight: FontWeight.bold); final blueBox = Container( alignment: Alignment.center, color: Colors.blue, height: 20, width: 30, child: Text( '1', style: textStyle, ), ); final redBox = Container( alignment: Alignment.center, color: Colors.red, height: 30, width: 40, child: Text( '2', style: textStyle, ), ); final greenBox = Container( alignment: Alignment.center, color: Colors.green, height: 20, width: 20, child: Text( '3', style: textStyle, ), ); @override Widget build(BuildContext context) { return Wrap( runSpacing: 5, children: MainAxisAlignment.values .map((mode) => Column(children: [ Container( margin: EdgeInsets.all(5), width: 160, height: 80, color: Colors.grey.withAlpha(33), child: _buildItem(mode)), Text(mode.toString().split('.')[1]) ])) .toList()); } _buildItem(mode) => Flex( direction: Axis.horizontal, mainAxisAlignment: mode, children: [ blueBox, redBox, greenBox ], ); }