show static method
Implementation
static void show(
BuildContext context,
String message, {
bool isError = false,
}) {
OverlayState? overlayState = Overlay.of(context);
if (overlayState == null) return;
OverlayEntry overlayEntry = OverlayEntry(
builder: (context) => Positioned(
top: MediaQuery.of(context).padding.top + 10, // Just below status bar
left: 16,
right: 16,
child: Material(
color: Colors.transparent,
child: AnimatedOpacity(
opacity: 1,
duration: const Duration(milliseconds: 300),
child: Container(
padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 16),
decoration: BoxDecoration(
color: isError ? Colors.red.shade600 : Colors.green.shade600,
borderRadius: BorderRadius.circular(10),
boxShadow: [
BoxShadow(
color: Colors.black26,
blurRadius: 8,
offset: Offset(0, 2),
),
],
),
child: Text(
message,
style: const TextStyle(
color: Colors.white,
fontWeight: FontWeight.w600,
fontSize: 16,
),
textAlign: TextAlign.center,
),
),
),
),
),
);
overlayState.insert(overlayEntry);
// Remove the overlay after 3 seconds
Future.delayed(const Duration(seconds: 3)).then((_) {
overlayEntry.remove();
});
}