A package that lets you uplift your SnackBar or MaterialBanner experience in the app.
title
: Top label that will be shown in the bodymessage
: Body message reflecting some error message, success message etc.color
: Color of SnackBar bodycontentType
: ContentType class reflecting failure, success, help or warning.inMaterialBanner
: Simply configure the working according toshowMaterialBanner
example.mov
To use the package:
- add the dependency to your pubspec.yaml file
dependencies:
flutter:
sdk: flutter
awesome_snackbar_content: <latest-package>
Then import it in your flutter project:
import 'package:awesome_snackbar_content/awesome_snackbar_content.dart';
Below are the looks of various types in package used as Snackbar
Below are the looks of various types in package used as Snackbar
Below is a basic example usage of the awesome_snackbar_content
import 'package:flutter/material.dart';
import 'package:awesome_snackbar_content/awesome_snackbar_content.dart';
class AweseomSnackBarExample extends StatelessWidget {
const AweseomSnackBarExample({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
ElevatedButton(
child: const Text('Show Awesome SnackBar'),
onPressed: () {
final snackBar = SnackBar(
/// need to set following properties for best effect of awesome_snackbar_content
elevation: 0,
behavior: SnackBarBehavior.floating,
backgroundColor: Colors.transparent,
content: AwesomeSnackbarContent(
title: 'On Snap!',
message:
'This is an example error message that will be shown in the body of snackbar!',
/// change contentType to ContentType.success, ContentType.warning or ContentType.help for variants
contentType: ContentType.failure,
),
);
ScaffoldMessenger.of(context)
..hideCurrentSnackBar()
..showSnackBar(snackBar);
},
),
const SizedBox(height: 10),
ElevatedButton(
child: const Text('Show Awesome Material Banner'),
onPressed: () {
final materialBanner = MaterialBanner(
/// need to set following properties for best effect of awesome_snackbar_content
elevation: 0,
backgroundColor: Colors.transparent,
forceActionsBelow: true,
content: AwesomeSnackbarContent(
title: 'Oh Hey!!',
message:
'This is an example error message that will be shown in the body of materialBanner!',
/// change contentType to ContentType.success, ContentType.warning or ContentType.help for variants
contentType: ContentType.success,
// to configure for material banner
inMaterialBanner: true,
),
actions: const [SizedBox.shrink()],
);
ScaffoldMessenger.of(context)
..hideCurrentMaterialBanner()
..showMaterialBanner(materialBanner);
},
),
],
),
),
);
}
}
This packages has been created in reference to Abu Anwar (GDE Flutter) YouTube video. So, make sure to check his work!