SliverListGrid constructor

const SliverListGrid({
  1. Key? key,
  2. int crossAxisCount = 1,
  3. double mainAxisSpacing = 0,
  4. double crossAxisSpacing = 0,
  5. double childAspectRatio = 1,
  6. bool crossAxisFlex = false,
  7. double maxCrossAxisExtent = 10,
  8. double? mainAxisExtent,
  9. IndexedWidgetBuilder? itemBuilder,
  10. int? itemCount,
  11. IndexedWidgetBuilder? separatorBuilder,
  12. ChildIndexGetter? findChildIndexCallback,
  13. SemanticIndexCallback? semanticIndexCallback,
  14. double? itemExtent,
  15. bool addAutomaticKeepALives = false,
  16. bool addRepaintBoundaries = false,
  17. bool addSemanticIndexes = true,
  18. Widget placeholder = const PlaceholderChild(),
  19. Widget? prototypeItem,
})

Implementation

const SliverListGrid({
  super.key,

  /// 多列最大列数 [crossAxisCount]>1 固定列
  this.crossAxisCount = 1,

  /// 水平子Widget之间间距
  this.mainAxisSpacing = 0,

  /// 垂直子Widget之间间距
  this.crossAxisSpacing = 0,

  /// 子 Widget 宽高比例 [crossAxisCount]>1是 有效
  this.childAspectRatio = 1,

  /// 是否开启列数自适应
  /// [crossAxisFlex]=true 为多列 且宽度自适应
  /// [maxCrossAxisExtent]设置最大宽度
  this.crossAxisFlex = false,

  /// [crossAxisFlex]=true 单个子Widget的水平最大宽度
  this.maxCrossAxisExtent = 10,
  this.mainAxisExtent,
  this.itemBuilder,
  this.itemCount,
  this.separatorBuilder,
  this.findChildIndexCallback,
  this.semanticIndexCallback,
  this.itemExtent,
  this.addAutomaticKeepALives = false,
  this.addRepaintBoundaries = false,
  this.addSemanticIndexes = true,
  this.placeholder = const PlaceholderChild(),
  this.prototypeItem,
})  : assert(itemBuilder != null && itemCount != null),
      children = null;