Вы должны использовать Stack
, и внутри этого диалогового окна использовать оповещение, как вы хотите.
Добавьте флаг, например bool showProgress
, всякий раз, когда вам нужно, чтобы диалоговое окно с предупреждением о ходе выполнения отображалось или скрывалось, просто установите showProgress=true
или showProgress=false
соответственно в setState
, чтобы показать или скрыть виджет диалогового окна предупреждения.
или просто используйте этот шаблон, который я создал.
static showProgressDialog(BuildContext context, String title) {
try {
showDialog(
context: context,
barrierDismissible: false,
builder: (context) {
return AlertDialog(
content: Flex(
direction: Axis.horizontal,
children: <Widget>[
CircularProgressIndicator(),
Padding(padding: EdgeInsets.only(left: 15),),
Flexible(
flex: 8,
child: Text(
title,
style: TextStyle(
fontSize: 16, fontWeight: FontWeight.bold),
)),
],
),
);
});
} catch (e) {
print(e.toString());
}
}
когда хочешь показать это просто позвони
AppUtils.showProgressDialog(context, "Please wait");
когда вы выполнили задание, просто позвоните Navigator.pop(context);
Вы можете создать класс как AppUtils
и поместить этот шаблон в класс, чтобы вы могли использовать его в любом месте своего приложения.