在 Flutter 中,如何平衡 Wrap 小部件的孩子?

Mar*_*rcG 5 flutter flutter-layout

在 Flutter 中,Wrap 小部件尝试将子项放置在主轴上与前一个子项相邻的位置,如果没有足够的空间来容纳子项,它会在横轴上与现有子项相邻的位置创建一个新的运行。

因此,例如,如果 3 个孩子适合水平运行,并且我们有 4 个孩子,它将有 2 次运行:第一个有 3 个孩子,第二个有 1 个孩子。

相反,在定义了运行次数后,我希望它“平衡”这些孩子的位置,以便它占用相同的运行次数,但最少的 width

在上面的例子中,这意味着第一次运行有 2 个孩子,第二次运行有 2 个孩子。但是,当然,这应该适用于任何宽度的任何数量的孩子。

我怎样才能做到这一点?

Mar*_*rcG 4

正如 R\xc3\xa9mi 所建议的,我Wrap使用自定义规则重新创建了小部件:https://pub.dev/packages/assorted_layout_widgetsWrapSuper中的小部件解决了这个问题。

\n\n

它并不完全保证最小的宽度,而是保证最小的粗糙度,这更正是我想要的。

\n