用于设置并约束子widget尺寸
ConstrainedBox:( constraints:BoxConstraints( minWidth:double.inifinity,//宽度尽可能大 maxWidth:..., minHeight:50.0, maxHeight:double.infinity//高度尽可能大 ) ) //constraints:BoxContraints.tightFor(width:80.0,height:80.0) 等价于BoxConstraints(minWidth:80.0,maxWidth:80.0,minHeight:80.0,maxHeight:80.0)
//用于设置具体宽高 SizedBox:( width:80.0, height:80.0, child:() )
多重限制:对于minWidth和minHeight来说,是取父子中相应数值较大的。实际上,只有这样才能保证父限制与子限制不冲突。
UnconstrainedBox:不会对子widget产生任何限制
ConstrainedBox( constraints: BoxConstraints(minWidth: 60.0, minHeight: 100.0), //父 child: UnconstrainedBox( //“去除”父级限制 child: ConstrainedBox( constraints: BoxConstraints(minWidth: 90.0, minHeight: 20.0),//子
//如果minHeight>=100.0,则占全部,且会溢出
//如果minHeight<100.0,则从底部开始往上占据
child: redBox, ), ) )
若给元素指定宽高,不起作用,可使用UnconstrainedBox