v4.9.0shirne_dialog
Um pacote Flutter para usar alertas, mensagens, popups, snacks, visualização de imagens, carregamento, etc., com estilo personalizável em qualquer lugar.
Um pacote para Flutter com diálogos personalizáveis (Alerta, Confirmação, Prompt, Toast, ...)
Texto original em inglês. Visite o GitHub para a versão atual.
A flutter package to use alert, confirm, prompt, toast, popup, snack, imagePreview, loading etc. with customizable style in anywhere.
✅ toast
✅ alert
✅ confirm
✅ prompt [new]
✅ modal
✅ popup
✅ imagePreview
✅ snack
✅ loading
✅ dropdown [new]
🚧 imagePreview support hero
🚧 modal adaptive & more style
🚧 guide
You must initialize ShirneDialogTheme on theme.extensions between flutter version 3.0.0 - 3.0.4
Above 3.0.5 dialog will use default theme when not provide in ThemeData.extends
| Toast | Dialog | ImagePreview |
|---|---|---|
![]() |
![]() |
![]() |
| Loading | Popup | Snackbar |
![]() |
![]() |
![]() |
| Dropdown | Dropdown | Customize |
![]() |
![]() |
![]() |
add localizations
dependencies:
#...
flutter_localizations:
sdk: flutter
#...
Recommanded usage
// Use Mydialog.navigatorKey with MaterialApp
// and set theme for dialog
MaterialApp(
// ...
navigatorKey: MyDialog.navigatorKey,
localizationsDelegates:[
ShirneDialogLocalizations.delegate,
// flutter locals see [https://docs.flutter.dev/development/accessibility-and-localization/internationalization]
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
GlobalCupertinoLocalizations.delegate,
],
theme: ThemeData.light().copyWith(extensions: [const ShirneDialogTheme()]);
// ...
);
// Use with MaterialApp.router
MaterialApp.router(
routerDelegate: AppRouterDelegate(),
);
class AppRouterDelegate<T> extends RouterDelegate<T> with PopNavigatorRouterDelegateMixin{
@override
GlobalKey<NavigatorState>? get navigatorKey => MyDialog.navigatorKey;
// ...
}
// Use with Getx
MyDialog.navigatorKey = Get.key;
// call in anywhere
MyDialog.confirm('aaa');
MyDialog.alert('test');
MyDialog.toast('test');
In 2.x and earlier
MyDialog.of(context).toast('tip message');
MyDialog.of(context).alert(Text('alert message'));
MyDialog.of(context).confirm(Text('alert message')).then((v){
});
MyDialog.of(context).popup(Text('popup contents'));
MyDialog.of(context).snack('tip');
// initialize in MaterialApp
MaterialApp(
//...
navigatorKey: MyDialog.navigatorKey,
//...
);
// and then call in anywhere
MyDialog.confirm('aaa');
MyDialog.alert('test');
MyDialog.toase('test');
Lista de dependências 4 itens
{"sdk":"flutter"}>=0.3.1 <1.0.0{"sdk":"flutter"}—Filtre pelo caso de uso, compare a atividade e confira o projeto original antes de adotá-lo.
“A repository is the most basic element of GitHub.”
GitHub Docs — About repositories ↗