我对颤振的渲染框感到困惑。这是我的理解:布局算法从根开始,向下遍历小部件树,将约束传递给子项。弹性框,在其滚动方向的有界约束中,尝试匹配它们的父约束。
考虑以下代码:
Widget build(BuildContext context) {
return LayoutBuilder(builder: (context, constraints) {
print("Parent");
print(constraints.maxWidth);
print(constraints.maxHeight);
return Column(children: [
LayoutBuilder(builder: (context, constraints) {
print("Child");
print(constraints.maxWidth);
print(constraints.maxHeight);
return SizedBox(
height: 12,
);
})
]);
});
}
Run Code Online (Sandbox Code Playgroud)
这打印
flutter: Parent
flutter: 320.0
flutter: 568.0
flutter: Child
flutter: 320.0
flutter: Infinity
Run Code Online (Sandbox Code Playgroud)
高度限制怎么突然变成无穷大了?它不应该匹配它的父级并且是 568.0 吗?
| 归档时间: |
|
| 查看次数: |
738 次 |
| 最近记录: |