除此以外,它还定义了一个便捷的构造函数,比如 BoxConstraints.tight(Size size)
生成给定大小的限制;BoxConstraints.expand()
可以用于生成一个尽可能大的填充容器。
SizedBox
用于给子元素指定固定的宽高,示例:
class ConstrainedWidget extends StatelessWidget{
@override
Widget build(BuildContext context) {
return SizedBox(
//直接通过宽高属性来限制了子组件的大小
width: 80,
height: 80,
child: DecoratedBox(
decoration: BoxDecoration(
color: Colors.pink
),
)
);
}
}
运行结果就是一个 80 * 80 的小方块,在此就不上图片了。
如果一个组件有多个限制,意思就是多个 ConstrainedBox
,那么哪个会生效呢?看一个示例:
class ConstrainedWidget extends StatelessWidget{
@override
Widget build(BuildContext context) {