【发布时间】:2018-04-27 06:08:55
【问题描述】:
如果我想实现通过调整子级大小来调整自身大小的 Widget,我该怎么做?
不知何故,我需要推迟尺码,直到所有孩子都弄清楚他们的尺码。
【问题讨论】:
标签: flutter
如果我想实现通过调整子级大小来调整自身大小的 Widget,我该怎么做?
不知何故,我需要推迟尺码,直到所有孩子都弄清楚他们的尺码。
【问题讨论】:
标签: flutter
您可以使用CustomMultiChildLayout 或CustomSingleChildLayout 创建自定义布局。
或者,如果这符合您的需要,请使用 IntrinsicWidth/IntrinsicHeight 小部件。
自定义布局基本上是一个Stack,只有定位的孩子。孩子们选择他们的尺寸,然后布局选择他们的位置。
但它有一个限制。布局尺寸不能取决于它的子尺寸。
Instrinsinc 小部件更简单但也更受限制。
一个用例是将Row 小部件包装在IntrincWidget 中,以模拟css display: flex; align-items: stretch;
如果您需要更复杂的东西,您需要创建自己的RenderObject。
是的,这是违反直觉的。
【讨论】: