如何添加进度栏?
单击按钮后,我需要在执行任务时显示进度条,完成任务后,如果成功登录,则应关闭该对话框并移至下一页。
在“提升按钮”中:
onPressed: () async {
(isOffline)
? showSnackBar(context)
: checkingValidation(usernameController, context, _url);
}
checkingValidation(TextEditingController usernameController, BuildContext context, String _url) async {
if(....){
...
}else{
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => HomePage()))
}
答案 0 :(得分:1)
您应该使用@font-face {
font-family: 'Glyphicons Halflings';
src: url('../fonts/glyphicons-halflings-regular.eot');
}
,并在其中使用“使用警告”对话框。
只要需要显示或隐藏进度警报对话框,就添加一个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);
类,并将此模板放置在类中,以便可以在应用程序中的任何位置重复使用它。