SliverStaggeredGrid.extentBuilder constructor

SliverStaggeredGrid.extentBuilder({
  1. Key? key,
  2. required double maxCrossAxisExtent,
  3. required IndexedStaggeredTileBuilder staggeredTileBuilder,
  4. required IndexedWidgetBuilder itemBuilder,
  5. required int itemCount,
  6. double mainAxisSpacing = 0,
  7. double crossAxisSpacing = 0,
})

Creates a sliver that builds multiple box children in a two dimensional arrangement with tiles that each have a maximum cross-axis extent.

This constructor is appropriate for grid views with a large (or infinite) number of children because the builder is called only for those children that are actually visible.

Uses a SliverStaggeredGridDelegateWithMaxCrossAxisExtent as the gridDelegate, and a SliverVariableSizeChildBuilderDelegate as the delegate.

See also:

Implementation

SliverStaggeredGrid.extentBuilder({
  Key? key,
  required double maxCrossAxisExtent,
  required IndexedStaggeredTileBuilder staggeredTileBuilder,
  required IndexedWidgetBuilder itemBuilder,
  required int itemCount,
  double mainAxisSpacing = 0,
  double crossAxisSpacing = 0,
})  : gridDelegate = SliverStaggeredGridDelegateWithMaxCrossAxisExtent(
        maxCrossAxisExtent: maxCrossAxisExtent,
        mainAxisSpacing: mainAxisSpacing,
        crossAxisSpacing: crossAxisSpacing,
        staggeredTileBuilder: staggeredTileBuilder,
        staggeredTileCount: itemCount,
      ),
      super(
        key: key,
        delegate: SliverChildBuilderDelegate(
          itemBuilder,
          childCount: itemCount,
        ),
      );