Mostrar diálogo de alerta na tela principal do aplicativo é carregado automaticamente no flutter
Quero mostrar a caixa de diálogo de alerta com base em uma condição. Não é baseado na interação do usuário, como evento de pressionar o botão.
Se um sinalizador estiver definido no diálogo de alerta de dados do estado do aplicativo, será exibido, caso contrário, não será.
Abaixo está o exemplo de diálogo de alerta que eu quero mostrar
void _showDialog() {
// flutter defined function
showDialog(
context: context,
builder: (BuildContext context) {
// return object of type Dialog
return AlertDialog(
title: new Text("Alert Dialog title"),
content: new Text("Alert Dialog body"),
actions: <Widget>[
// usually buttons at the bottom of the dialog
new FlatButton(
child: new Text("Close"),
onPressed: () {
Navigator.of(context).pop();
},
),
],
);
},
);
}
Tentei chamar esse método dentro do método de compilação do widget da tela principal, mas isso me dá um erro -
The context used to push or pop routes from the Navigator must be that of a widget that is a descendant of a Navigator widget.
E/flutter ( 3667): #0 Navigator.of.<anonymous closure> (package:flutter/src/widgets/navigator.dart:1179:9)
E/flutter ( 3667): #1 Navigator.of (package:flutter/src/widgets/navigator.dart:1186:6)
E/flutter ( 3667): #2 showDialog (package:flutter/src/material/dialog.dart:642:20)
O problema é que não sei de onde devo chamar esse método _showDialog?