show static method

void show(
  1. BuildContext context, {
  2. required String message,
  3. Duration duration = const Duration(seconds: 3),
  4. Color backgroundColor = Colors.black,
  5. Color textColor = Colors.white,
  6. double borderRadius = 8.0,
  7. IconData? icon,
  8. Color? iconColor,
  9. VoidCallback? onDismissed,
  10. bool showProgress = false,
  11. ToastPosition position = ToastPosition.bottom,
  12. double elevation = 4.0,
  13. EdgeInsetsGeometry padding = const EdgeInsets.symmetric(horizontal: 16.0, vertical: 10.0),
  14. double? width,
})

Shows a toast message

Implementation

static void show(
  BuildContext context, {
  required String message,
  Duration duration = const Duration(seconds: 3),
  Color backgroundColor = Colors.black,
  Color textColor = Colors.white,
  double borderRadius = 8.0,
  IconData? icon,
  Color? iconColor,
  VoidCallback? onDismissed,
  bool showProgress = false,
  ToastPosition position = ToastPosition.bottom,
  double elevation = 4.0,
  EdgeInsetsGeometry padding = const EdgeInsets.symmetric(horizontal: 16.0, vertical: 10.0),
  double? width,
}) {
  final overlay = Overlay.of(context);
  final overlayEntry = OverlayEntry(
    builder: (context) => ToastNotification(
      message: message,
      duration: duration,
      backgroundColor: backgroundColor,
      textColor: textColor,
      borderRadius: borderRadius,
      icon: icon,
      iconColor: iconColor,
      onDismissed: onDismissed,
      showProgress: showProgress,
      position: position,
      elevation: elevation,
      padding: padding,
      width: width,
    ),
  );

  overlay.insert(overlayEntry);

  // Auto dismiss after duration
  if (!showProgress) {
    Future.delayed(duration, () {
      overlayEntry.remove();
      if (onDismissed != null) {
        onDismissed();
      }
    });
  }
}