900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > Flutter自定义加载中的Loading

Flutter自定义加载中的Loading

时间:2020-04-19 05:59:57

相关推荐

Flutter自定义加载中的Loading

一、定义

class YmDialog extends Dialog {final String title;const YmDialog(this.title, {Key? key}) : super(key: key);@overrideWidget build(BuildContext context) {// TODO: implement buildreturn Center(//创建透明层child: Material(type: MaterialType.transparency, //透明类型child: SizedBox(width: 120,height: 120,child: Container(decoration: ShapeDecoration(color: ThemeColors.color585858,shape: const RoundedRectangleBorder(borderRadius: BorderRadius.all(Radius.circular(5.0)))),child: Column(mainAxisAlignment: MainAxisAlignment.center,crossAxisAlignment: CrossAxisAlignment.center,children: <Widget>[const CircularProgressIndicator(color: Colors.white,),Padding(padding: const EdgeInsets.only(top: 14),child: Text(title,style: const TextStyle(fontSize: 14.0, color: Colors.white),),),],),),),),);}}

二、显示

showDialog(context: context,barrierColor: Colors.transparent, //背景透明barrierDismissible: false, // 屏蔽点击对话框外部自动关闭builder: (BuildContext context) {return const YmDialog("加载中…");});

缺点:

无法点击穿透dialog后面的页面事件,例如首页的显示图片,显示加载中后面的「点击显示消息提示框」就无法响应,如果有这个需求的就不能用了,需使用第三方库flutter_smart_dialog:

https://pub.flutter-/packages/flutter_smart_dialog/install

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。