ResponsiveListView.separated constructor

ResponsiveListView.separated({
  1. Key? key,
  2. BreakpointsData<Axis>? scrollDirection,
  3. BreakpointsData<bool>? reverse,
  4. ScrollController? controller,
  5. bool? primary,
  6. BreakpointsData<ScrollPhysics>? physics,
  7. BreakpointsData<bool>? shrinkWrap,
  8. BreakpointsData<EdgeInsets>? padding,
  9. double? cacheExtent,
  10. BreakpointsData<DragStartBehavior>? dragStartBehavior,
  11. BreakpointsData<ScrollViewKeyboardDismissBehavior>? keyboardDismissBehavior,
  12. BreakpointsData<Clip>? clipBehavior,
  13. required IndexedWidgetBuilder itemBuilder,
  14. required IndexedWidgetBuilder separatorBuilder,
  15. required int itemCount,
  16. bool addAutomaticKeepAlives = true,
  17. bool addRepaintBoundaries = true,
  18. bool addSemanticIndexes = true,
})

Implementation

ResponsiveListView.separated({
  super.key,
  this.scrollDirection,
  this.reverse,
  this.controller,
  this.primary,
  this.physics,
  this.shrinkWrap,
  this.padding,
  this.cacheExtent,
  this.dragStartBehavior,
  this.keyboardDismissBehavior,
  this.clipBehavior,
  required IndexedWidgetBuilder itemBuilder,
  required IndexedWidgetBuilder separatorBuilder,
  required int itemCount,
  bool addAutomaticKeepAlives = true,
  bool addRepaintBoundaries = true,
  bool addSemanticIndexes = true,
}) : childrenDelegate = SliverChildBuilderDelegate(
        (context, index) {
          final int itemIndex = index ~/ 2;
          if (index.isEven) return itemBuilder(context, itemIndex);
          return separatorBuilder(context, itemIndex);
        },
        childCount: math.max(0, itemCount * 2 - 1),
        addAutomaticKeepAlives: addAutomaticKeepAlives,
        addRepaintBoundaries: addRepaintBoundaries,
        addSemanticIndexes: addSemanticIndexes,
      );