我很难理解以下example from the official Flutter docs条:

enter image description here

遵循著名的"Constraints go down. Sizes go up. Parent sets position"规则,并假设屏幕大小为1024x800,小部件之间的对话不应该是这样的:

家长:"你必须是004像素宽,0800像素高".

子元素(红色的容器):"好的,我想要100像素宽,100像素高."

然而,根据doctor 的说法,父母强迫子元素占据整个屏幕.

那么,它为什么要这么做,而不是让子元素活到100x100岁呢?

推荐答案

据我所知,当我们谈论约束时,有两个必填字段.

  • 大小
  • 职位

而且它也在文档中提到过.有一些限制

  • Widget通常不能有它想要的任何大小.
  • 小工具不知道,也不能决定自己在屏幕上的位置

Example 2中,正如您所提到的,容器只有大小,但不知道它在屏幕上的位置.这就是为什么Container充满了屏幕.


通过添加Aligment将设置容器的位置.这就是为什么在示例3中,当它用Center包装时,大小=AligmentxAligment

因为现在容器有两个必填字段:

  • 大小 : 100x100
  • 职位 : in the center of the screen ( Alignment.center )

Flutter相关问答推荐

如何在应用栏中将列置于中心

如何将Will POP示波器转换为POP数据抖动的POP示波器

在框中保存对象列表时,类型推断无法正常工作

从超级应用程序启动时,Flutter 小应用程序中未加载资源

BlocBuilder仅生成一次,并在后续发出时停止重建

如何在Ffltter 3.16中设置标准的提升按钮主题?

如何在Flutter 中创造以下效果

dotenv:未处理的异常:FileNotFoundError的实例

如何手动将 FirebaseAuth 用户邮箱验证状态设置为 true

SliverAppbar 呈蓝色

Flutter:如何在 Future 函数上添加网络判断和 showDialog

Flutter - Riverpod 2.0 - 如何访问 onDispose 回调?

如何在Flutter中的textField中在可编辑文本和前缀图标之间添加空格?

如何计算 Firestore 集合中的文档数量?

更改底部导航栏下方 Flutter Snackbar 的位置

如何解决需要一个标识符,但得到的是:.try 在:之前插入一个标识符.dart 错误

Flutter - 我需要显示文本,但应用程序不需要

如何根据字符串值动态构建和显示小部件?

如何让多个图标转到不同的网址

Android Studio 模拟器屏幕闪烁