pushWidget<T> static method
Future<T?>
pushWidget<T>(
- BuildContext context,
- Widget pageBuilder(), {
- NavTransitionType transitionType = NavTransitionType.fade,
- Duration? transitionDuration,
- Duration? reverseTransitionDuration,
- bool maintainState = true,
- bool fullscreenDialog = false,
Push a widget directly using a lazy builder (avoids building the widget before the transition starts).
Implementation
static Future<T?> pushWidget<T>(
BuildContext context,
Widget Function() pageBuilder, {
NavTransitionType transitionType = NavTransitionType.fade,
Duration? transitionDuration,
Duration? reverseTransitionDuration,
bool maintainState = true,
bool fullscreenDialog = false,
}) => Navigator.push<T>(
context,
PageRouteBuilder<T>(
transitionDuration:
transitionDuration ?? NavTransitions.defaultDuration(transitionType),
reverseTransitionDuration:
reverseTransitionDuration ??
NavTransitions.defaultReverseDuration(transitionType),
maintainState: maintainState,
fullscreenDialog: fullscreenDialog,
pageBuilder: (_, _, _) => pageBuilder(),
transitionsBuilder: (ctx, animation, secondary, child) =>
NavTransitions.build(
transitionType,
ctx,
animation,
secondary,
child,
),
),
);