SliverOverlapAbsorber & SliverOverlapInjector

SliverOverlapAbsorberSliverOverlapInjector 是 Flutter 中用于处理 Sliver 重叠的两个组件。它们通常一起使用,用于在 CustomScrollView 中处理 Sliver 之间的重叠和相互影响

SliverOverlapAbsorber

SliverOverlapAbsorber 的主要目的是吸收自身与其它处于同一 Viewport 中的与它在 CustomScrollView 中排列的 Sliver 发生的重叠。在这个过程中,它会计算重叠的大小并将它传递给 SliverOverlapInjector,从而影响后者的布局。

SliverOverlapInjector

SliverOverlapInjector 用于注入 SliverOverlapAbsorber 中计算得到的重叠信息,并影响 CustomScrollView 中排列的 Sliver 的布局。

总结

SliverOverlapAbsorber 用于吸收其他 Sliver 的重叠信息,SliverOverlapInjector 用于注入 SliverOverlapAbsorber 中计算得到的重叠信息。

一般情况下,它们一起使用,以解决 CustomScrollView 中 Sliver 之间的重叠问题,特别是在有多个可滚动的区域时。

Reference

  • 引自 ChatGPT 回复,出处不详。
Licensed under CC BY-NC-SA 4.0