Files
nearby_service/example/lib/utils/app_snack_bar.dart
T
2024-02-08 12:44:04 +01:00

32 lines
818 B
Dart

import 'package:flutter/material.dart';
class AppSnackBar {
AppSnackBar._();
static Future<void> show(
BuildContext context, {
required String title,
String? subtitle,
String? actionName,
VoidCallback? onAcceptAction,
}) async {
final content = Column(
mainAxisSize: MainAxisSize.min,
children: [
Text(title, style: const TextStyle(fontSize: 16)),
if (subtitle != null) Text(subtitle),
],
);
final action = onAcceptAction != null && actionName != null
? SnackBarAction(label: actionName, onPressed: onAcceptAction)
: null;
final messenger = ScaffoldMessenger.of(context).showSnackBar(
SnackBar(
content: content,
action: action,
),
);
return messenger.closed.then((value) => null);
}
}