ElChildSizeBuilder constructor

const ElChildSizeBuilder({
  1. Key? key,
  2. BoxConstraints? constraints,
  3. required Widget tempChild,
  4. required Widget builder(
    1. Size size
    ),
})

在 build 过程中直接访问 child 尺寸的小部件,无需帧后回调,其核心原理便是在进行实际布局前探测 tempChild 的尺寸, 然后将 size 传递给 builder 方法。

注意:该小部件的布局成本比较昂贵,因为需要探测尺寸的小部件可能会在一次帧回调中布局 2 次, 第一次是布局 tempChild,第二次是在 builder 中复用探测尺寸的小部件,所以你应当避免探测很重的小部件, 尤其是拥有多个子项的列表。

Implementation

const ElChildSizeBuilder({
  super.key,
  this.constraints,
  required this.tempChild,
  required this.builder,
});