custom_transition_builders.dart 885 B

12345678910111213141516171819202122232425262728293031
  1. import 'package:flutter/material.dart';
  2. class CustomTransitionsBuilders {
  3. const CustomTransitionsBuilders._();
  4. static const ZoomPageTransitionsBuilder zoomPageTransitionsBuilder =
  5. ZoomPageTransitionsBuilder();
  6. static const RouteTransitionsBuilder zoomedPage = _zoomedPage;
  7. static Widget _zoomedPage(
  8. BuildContext context,
  9. Animation<double> animation,
  10. Animation<double> secondaryAnimation,
  11. Widget child,
  12. ) {
  13. return zoomPageTransitionsBuilder.buildTransitions(
  14. // Empty PageRoute<> object, only used to pass allowSnapshotting to ZoomPageTransitionsBuilder
  15. PageRouteBuilder(
  16. allowSnapshotting: true,
  17. fullscreenDialog: false,
  18. pageBuilder: (context, animation, secondaryAnimation) =>
  19. const SizedBox.shrink(),
  20. ),
  21. context,
  22. animation,
  23. secondaryAnimation,
  24. child,
  25. );
  26. }
  27. }