animatedDialog<T> static method
Future<T?>
animatedDialog<T>(
- Widget child, {
- bool barrierDismissible = true,
- Color? barrierColor,
- RouteTransitions transition = RouteTransitions.fadeScale,
- Duration duration = const Duration(milliseconds: 250),
- Curve curve = Curves.easeOut,
- Alignment alignment = Alignment.center,
- VoidCallback? onDismiss,
Implementation
static Future<T?> animatedDialog<T>(
Widget child, {
bool barrierDismissible = true,
bool useRootNavigator = true,
Color? barrierColor,
RouteTransitions transition = RouteTransitions.fadeScale,
Duration duration = const Duration(milliseconds: 250),
Curve curve = Curves.easeOut,
Alignment alignment = Alignment.center,
VoidCallback? onDismiss,
}) =>
showGeneralDialog<T>(
context: navigatorKey.currentContext!,
barrierDismissible: barrierDismissible,
barrierLabel: MaterialLocalizations.of(navigatorKey.currentContext!).modalBarrierDismissLabel,
barrierColor: barrierColor ?? Colors.black54,
useRootNavigator: useRootNavigator,
transitionDuration: duration,
pageBuilder: (BuildContext context, Animation<double> _, Animation<double> _) => Align(alignment: alignment, child: child),
transitionBuilder: (BuildContext context, Animation<double> animation, Animation<double> secondaryAnimation, Widget widget) =>
_getTransition(transition, curve)(context, animation, secondaryAnimation, widget),
).then((T? value) {
onDismiss?.call();
return value;
});