getCrossAxisOffset method

double getCrossAxisOffset(
  1. SliverConstraints constraints,
  2. int? crossAxisIndex
)

Return the offset of the child in the non-scrolling axis.

Implementation

double getCrossAxisOffset(
    SliverConstraints constraints, int? crossAxisIndex) {
  final bool reverseCrossAxis =
      axisDirectionIsReversed(constraints.crossAxisDirection);
  final int crossAxisCount = getCrossAxisCount(constraints);
  final double childUsableCrossAxisExtent =
      getChildUsableCrossAxisExtent(constraints);
  final int actualCrossAxisIndex = (reverseCrossAxis && crossAxisCount > 1)
      ? crossAxisCount - 1 - crossAxisIndex!
      : crossAxisIndex!;

  return actualCrossAxisIndex %
      crossAxisCount *
      (childUsableCrossAxisExtent + crossAxisSpacing);
}