提出问题
探究这个问题的契机是这样一小段代码:
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text("test"),
),
body: Container(
color: Colors.red,
child:AspectRatio(
aspectRatio: 2,
child: Container(
width: 100,
height: 100,
color: Colors.blue,
),
)
)
);
}
写这一段是本来想要测试一下AsPectRatio的用法,想象中出现的画面应该是全屏红色,包裹着一个100*200的蓝色方块。但是运行出来的效果:
挠头到头秃,为什么里面那一层Container设置的大小不管用了呢??之前的工作中用到Container时有些奇怪的地方,例如设置大小不如预期啊之类的,但是我一直没去深究,也没去看源码,于是我决定先把AspectRatio的事情放到一边,先把这个Container的事情搞明白再说。
分析问题
这时候我的同事跟我分享了一篇文章,https://mp.weixin.qq.com/s/nkjPIgNRazW56bHuh0PEXQ,我获取到的有效信息是:
原文深入浅出,我这个小白一下子就明白了其中的道理,可是我想知道,这在代码里具体是怎么操作的呢?父控件对子