Flutter核心Widget介绍(3)

139 阅读1分钟

Row

Row(
 { Key key,
  MainAxisAlignment mainAxisAlignment: MainAxisAlignment.start, 
  MainAxisSize mainAxisSize: MainAxisSize.max, 
  CrossAxisAlignment crossAxisAlignment: CrossAxisAlignment.center, 
  TextDirection textDirection, 
  VerticalDirection verticalDirection: VerticalDirection.down,
  TextBaseline textBaseline: TextBaseline.alphabetic, 
  List<Widget> children: const <Widget>[]
 }
)

1.介绍

在水平数组中显示其子级对象的widget

  • 要将子级对象展开可以填充其水平方向的可以空间,需将其子级对象包裹在Eapandedwidget中。
  • Rowwidget不能滚动。一般来说,如果多个子级对象放在Rowwidget里且超过了可用空间,这样被认定为错误的。如果有一系列widget,在空间不足且希望它能滚动,一般考虑使用ListView.
  • 如果仅有一个Child,则考虑使用AlignCenter来定位Child.

2.故障排除

为什么会有一个黄黑相间的预警条纹?

  • 如果行的非弹性内容(那些未被ExpandedFlexible包裹的widget)在一起的宽超过了行本身,则表示该行已经溢出。当行溢出时,它的ExpandedFlexible子级没有任何剩余空间可供共享.此时则会出现黄黑相间的预警条纹。如果行外有空间,溢出量将会用红色字体打印出来.

3.布局算法