美文网首页flutter
Flutter之自定义dialog

Flutter之自定义dialog

作者: 习惯了_就好 | 来源:发表于2019-03-20 16:33 被阅读1次
import 'package:flutter/material.dart';

class LoadingDialog extends Dialog {
  String message;

  LoadingDialog({Key key, @required this.message}) :super(key: key);

  @override
  Widget build(BuildContext context) {
    return Material(
      type: MaterialType.transparency,//半透明背景
      child: Center(
        child: SizedBox(
          width: 100.0,
          height: 100.0,
          child: Container(
            decoration: ShapeDecoration(
              color: Colors.white,
              shape: RoundedRectangleBorder(
                borderRadius: BorderRadius.all(
                    Radius.circular(10.0)
                ),
              ),
            ),
            child: Column(
              mainAxisAlignment: MainAxisAlignment.center,
              crossAxisAlignment: CrossAxisAlignment.center,
              children: <Widget>[
                SizedBox(
                  width: 30.0,
                  height: 30.0,
                  child: CircularProgressIndicator(
                    strokeWidth: 2.0,
                  ),
                ),
                Padding(
                  padding: EdgeInsets.only(top: 20.0),
                  child: Text(message,
                    style: TextStyle(
                        fontSize: 14.0,
                        color: Color(0xff333333)
                    ),
                  ),
                ),
              ],
            ),
          ),
        ),
      ),
    );
  }

}
显示:
showDialog(
  context: context,
  builder: (BuildContext context) => LoadingDialog(message: "加载中",)
  }
)
关闭:Navigator.pop(context)

相关文章

网友评论

    本文标题:Flutter之自定义dialog

    本文链接:https://www.haomeiwen.com/subject/ipltvqtx.html