## EdgeInsets - fromLTRB(double left, double top, double right, double bottom):分别指定四个方向的填充。 - all(double value) : 所有方向均使用相同数值的填充。 - only({left, top, right ,bottom }):可以设置具体某个方向的填充(可以同时指定多个方向)。 - symmetric({vertical, horizontal}):用于设置对称方向的填充,vertical指top和bottom,horizontal指left和right。 ## 获取当前时间戳 - DateTime.now().millisecondsSinceEpoch # 布局容器 ## Container - child - padding: EdgeInsets.all(18.0) - margin: EdgeInsets.all(44.0) - width - height - alignment: Alignment.center 子 Widget 居中对齐 - decoration Container 样式 BoxDecoration ## IntrinsicHeight - 当我们使用行(row)的时候,子组件常常因为高度的不同,导致各个子组件里面的内容不能对齐。这个时候我们可以使用IntrinsicHeight来保持row中各个子组件高度一致,从而便于纵向居中对齐。 ```java new IntrinsicHeight( child: new Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ new Container(color: Colors.blue, width: 100.0), new Container(color: Colors.red, width: 50.0,height: 50.0,), new Container(color: Colors.yellow, width: 150.0), ], ), ); ``` ## Row - mainAxisAlignment:主轴布局方式,row主轴方向是水平方向 - crossAxisAlignment: 交叉轴的布局方式,对于row来说就是垂直方向的布局方式 ```java //一行3个控件,要平分放 mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisSize: MainAxisSize.max, //交叉轴的布局方式,对于column来说就是水平方向的布局方式 crossAxisAlignment: CrossAxisAlignment.center, //就是字child的垂直布局方向,向上还是向下 verticalDirection: VerticalDirection.down, children: [ Text('我是第1个'), Text('我是第2个'), Text('我是第3个'), ], ``` ## Column ## Center ## Padding - padding: const EdgeInsets.all(8.0), ## Stack ### Positioned - left - top - right - bottom ## Spacer - 顾名思义只是一个间距控件,可以用于调节小部件之间的间距,它有一个flex可以进行设置 ## Expanded - Expanded会尽可能的充满分布在Row, Column, or Flex的主轴方向上 ## Flexible - Flexible也是为小部件提供空间的,但是不会要求子空间填满可用空间 ## Offstage 控件的显示与隐藏 - offstage: true, //这里控制 当为true时控件隐藏 - child: Container(color: Colors.blue,height: 100.0,), ## LinearProgressIndicator - 可以使用SizedBox来设置高度与宽度