A really easy to use flutter toast library!
Overview
- In the true sense of Toast, you can call it whenever you need it, without any restrictions!
- Feature-rich, support for displaying notifications, text, loading, attachments, etc. Toast
- Support for popping up various custom Toasts, or you can pop up any Widget as long as it meets the requirements of the flutter code.
- API is simple and easy to use
- Pure flutter implementation
Online Demo
Online demo (Web effects may be biased, the actual effect is subject to the mobile phone)
Getting started
1. add dependencies into you project pubspec.yaml file
dependencies: bot_toast: ^3.0.5 # bot_toast: ^4.0.0 #null safety
2. import BotToast lib
import 'package:bot_toast/bot_toast.dart';
3. initialization BotToast
MaterialApp( title: 'BotToast Demo', builder: BotToastInit(), //1. call BotToastInit navigatorObservers: [BotToastNavigatorObserver()], //2. registered route observer home: XxxxPage(), )
or
//Warning: Don't arbitrarily adjust the position of calling the BotToastInit function final botToastBuilder = BotToastInit(); //1. call BotToastInit MaterialApp( title: 'BotToast Demo', builder: (context, child) { child = myBuilder(context,child); //do something child = botToastBuilder(context,child); return child; }, navigatorObservers: [BotToastNavigatorObserver()], //2. registered route observer home: XxxxPage(), )
4. use BotToast
BotToast.showText(text:"xxxx"); //popup a text toast;
BotToast.showSimpleNotification(title: "init"); // popup a notification toast;
BotToast.showLoading(); //popup a loading toast
//popup a attachments toast BotToast.showAttachedWidget( attachedBuilder: (_) => Card( child: Padding( padding: const EdgeInsets.all(8.0), child: Icon( Icons.favorite, color: Colors.redAccent, ), ), ), duration: Duration(seconds: 2), target: Offset(520, 520));
//custom api BotToast.showCustomNotification(...) BotToast.showCustomText(...) BotToast.showCustomLoading(...) BotToast.showAnimationWidget(...)
3.0 version
Major changes:
- Reimplemented the underlying initialization logic, the code is simpler and more general, and no longer depends on
Navigator
- Modify the initialization method
2.x version upgrade to 3.x version
change:
//2.x.x version initialization method BotToastInit( child:MaterialApp( title: 'BotToast Demo', navigatorObservers: [BotToastNavigatorObserver()], home: XxxxPage(), ) );
to:
//3.x.x version initialization method MaterialApp( title: 'BotToast Demo', builder: BotToastInit(), navigatorObservers: [BotToastNavigatorObserver()], home: XxxxPage(), )
Demo





Source:MMMzq/bot_toast
Tags:demo