ExtendedGridView constructor

ExtendedGridView({
  1. Key? key,
  2. Axis scrollDirection = Axis.vertical,
  3. bool reverse = false,
  4. ScrollController? controller,
  5. bool? primary,
  6. ScrollPhysics? physics,
  7. bool shrinkWrap = false,
  8. EdgeInsetsGeometry? padding,
  9. required SliverGridDelegate gridDelegate,
  10. bool addAutomaticKeepAlives = true,
  11. bool addRepaintBoundaries = true,
  12. bool addSemanticIndexes = true,
  13. double? cacheExtent,
  14. List<Widget> children = const <Widget>[],
  15. int? semanticChildCount,
  16. required ExtendedListDelegate extendedListDelegate,
  17. DragStartBehavior dragStartBehavior = DragStartBehavior.start,
  18. Clip clipBehavior = Clip.hardEdge,
  19. ScrollViewKeyboardDismissBehavior keyboardDismissBehavior = ScrollViewKeyboardDismissBehavior.manual,
  20. String? restorationId,
})

Creates a scrollable, 2D array of widgets with a custom SliverGridDelegate.

The gridDelegate argument must not be null.

The addAutomaticKeepAlives argument corresponds to the SliverChildListDelegate.addAutomaticKeepAlives property. The addRepaintBoundaries argument corresponds to the SliverChildListDelegate.addRepaintBoundaries property. Both must not be null.

Implementation

ExtendedGridView({
  Key? key,
  Axis scrollDirection = Axis.vertical,
  bool reverse = false,
  ScrollController? controller,
  bool? primary,
  ScrollPhysics? physics,
  bool shrinkWrap = false,
  EdgeInsetsGeometry? padding,
  required this.gridDelegate,
  bool addAutomaticKeepAlives = true,
  bool addRepaintBoundaries = true,
  bool addSemanticIndexes = true,
  double? cacheExtent,
  List<Widget> children = const <Widget>[],
  int? semanticChildCount,
  required this.extendedListDelegate,
  DragStartBehavior dragStartBehavior = DragStartBehavior.start,
  Clip clipBehavior = Clip.hardEdge,
  ScrollViewKeyboardDismissBehavior keyboardDismissBehavior =
      ScrollViewKeyboardDismissBehavior.manual,
  String? restorationId,
})  : childrenDelegate = SliverChildListDelegate(
        children,
        addAutomaticKeepAlives: addAutomaticKeepAlives,
        addRepaintBoundaries: addRepaintBoundaries,
        addSemanticIndexes: addSemanticIndexes,
      ),
      super(
        key: key,
        scrollDirection: scrollDirection,
        reverse: reverse,
        controller: controller,
        primary: primary,
        physics: physics,
        shrinkWrap: shrinkWrap,
        padding: padding,
        cacheExtent: cacheExtent,
        semanticChildCount: semanticChildCount ?? children.length,
        dragStartBehavior: dragStartBehavior,
        keyboardDismissBehavior: keyboardDismissBehavior,
        restorationId: restorationId,
        clipBehavior: clipBehavior,
      );