push<T extends Object?> method
Future<T?>
push<T extends Object?>(
- Widget widget, {
- PageRouteBuilder<
T> ? routeBuilder, - RoutePageBuilder? pageBuilder,
- RouteTransitionsBuilder? transition,
- RouteSettings? settings,
- Duration? duration = const Duration(milliseconds: 300),
- Duration? reverseDuration = const Duration(milliseconds: 300),
- bool? opaque = true,
- bool? barrierDismissible = false,
- Color? barrierColor,
- String? barrierLabel,
- bool? maintainState = true,
- bool? fullscreenDialog = false,
Implementation
Future<T?> push<T extends Object?>(
Widget widget, {
PageRouteBuilder<T>? routeBuilder,
RoutePageBuilder? pageBuilder,
RouteTransitionsBuilder? transition,
// copy from PageRouteBuilder constructor
RouteSettings? settings,
Duration? duration = const Duration(milliseconds: 300),
Duration? reverseDuration = const Duration(milliseconds: 300),
bool? opaque = true,
bool? barrierDismissible = false,
Color? barrierColor,
String? barrierLabel,
bool? maintainState = true,
bool? fullscreenDialog = false,
}) {
transition = transition ?? transitionBuilder ?? ShowerTransitionBuilder.slideFromBottom;
pageBuilder = pageBuilder ?? (ctx, animOne, animTwo) => widget;
routeBuilder = routeBuilder ??
PageRouteBuilder<T>(
pageBuilder: pageBuilder,
transitionsBuilder: transition,
settings: settings,
transitionDuration: duration ?? const Duration(milliseconds: 300),
reverseTransitionDuration: reverseDuration ?? const Duration(milliseconds: 300),
opaque: opaque ?? true,
barrierDismissible: barrierDismissible ?? false,
barrierColor: barrierColor,
barrierLabel: barrierLabel,
maintainState: maintainState ?? true,
fullscreenDialog: fullscreenDialog ?? false,
);
return getNavigator()!.push<T>(routeBuilder);
}