createGridItemSlideAnimation function

Animation<Offset>? createGridItemSlideAnimation({
  1. required int end,
  2. required int from,
  3. required bool enable,
  4. required Size itemSize,
  5. required Axis direction,
  6. required int crossCount,
  7. required double mainAxisSpacing,
  8. required double crossAxisSpacing,
  9. required AnimationController animateController,
})

Create GridItem slideAnimation (from -> end)

Implementation

Animation<Offset>? createGridItemSlideAnimation({
  required int end,
  required int from,
  required bool enable,
  required Size itemSize,
  required Axis direction,
  required int crossCount,
  required double mainAxisSpacing,
  required double crossAxisSpacing,
  required AnimationController animateController,
}) {
  if (enable && from != end) {
    Tween<Offset> tween = Tween(
      begin: getAnimationGridItemOffset(
        crossAxisSpacing: crossAxisSpacing,
        mainAxisSpacing: mainAxisSpacing,
        crossCount: crossCount,
        direction: direction,
        itemSize: itemSize,
        from: from,
        end: end,
      ),
      end: const Offset(0.0, 0.0),
    );

    return tween.animate(
      CurvedAnimation(
        parent: animateController,
        curve: Curves.easeOut,
      ),
    );
  }

  return null;
}