SlideRoute constructor

SlideRoute({
  1. required Widget page,
  2. Offset? offset,
  3. RouteSettings? settings,
  4. Duration? transitionDuration,
  5. Duration? reverseTransitionDuration,
  6. bool? opaque,
  7. bool? barrierDismissible,
  8. Color? barrierColor,
  9. String? barrierLabel,
  10. bool? maintainState,
})

Implementation

SlideRoute({
  required this.page,
  Offset? offset,
  RouteSettings? settings,
  Duration? transitionDuration,
  Duration? reverseTransitionDuration,
  bool? opaque,
  bool? barrierDismissible,
  Color? barrierColor,
  String? barrierLabel,
  bool? maintainState,
}) : super(
        settings: settings,
        transitionDuration:
            transitionDuration ?? const Duration(milliseconds: 300),
        reverseTransitionDuration:
            reverseTransitionDuration ?? const Duration(milliseconds: 300),
        opaque: opaque ?? true,
        barrierDismissible: barrierDismissible ?? false,
        barrierColor: barrierColor,
        barrierLabel: barrierLabel,
        maintainState: maintainState ?? true,
        pageBuilder: (
          BuildContext context,
          Animation<double> animation,
          Animation<double> secondaryAnimation,
        ) =>
            page,
        transitionsBuilder: (
          BuildContext context,
          Animation<double> animation,
          Animation<double> secondaryAnimation,
          Widget child,
        ) =>
            SlideTransition(
          position: Tween<Offset>(
            begin: offset ??= const Offset(0, 1),
            end: Offset.zero,
          ).animate(animation),
          child: child,
        ),
      );