2023-06-02 StackFit 枚举值区别
2023-06-01 本文已影响0人
我是小胡胡123
非定位子项
StackFit 枚举定义了用于控制 [Stack] 非定位子项的大小的方式。
loose:父项传递给堆栈的约束条件被放宽。例如,如果堆栈有强制宽度为 350、高度为 600 的约束条件,则非定位的堆栈子项的宽度可以是从零到 350 的任意值,高度可以是从零到 600 的任意值。在使用 [loose] 时,非定位子项的大小可以自由调整。
expand:父项传递给堆栈的约束条件被收紧到允许的最大尺寸。例如,如果堆栈有宽度在 10 到 100 范围内、高度在 0 到 600 范围内的放宽约束条件,那么非定位的堆栈子项的大小将全部设置为宽度为 100 像素、高度为 600 像素。使用 [expand] 时,非定位子项将以最大的约束条件进行调整。
passthrough:父项传递给堆栈的约束条件不作修改地传递给非定位子项。例如,如果一个 [Stack] 是 [Row] 的 [Expanded] 子项,水平约束条件将会很紧,而垂直约束条件将会比较宽松。使用 [passthrough] 时,非定位子项将使用与堆栈相同的约束条件。
这些枚举值可以用于 [Stack.fit] 和 [RenderStack.fit] 中,来调整从父项传递给堆栈子项的 [BoxConstraints]。