showAlertDialog static method

dynamic showAlertDialog(
  1. BuildContext context, {
  2. String title = "",
  3. String message = "",
  4. bool isDismissible = true,
  5. required Function onDismissAction,
})

Implementation

static showAlertDialog(
  BuildContext context, {
  String title = "",
  String message = "",
  bool isDismissible = true,
  required Function onDismissAction,
}) async {
  Widget alertBodyWidget = Column(
    mainAxisSize: MainAxisSize.min,
    children: <Widget>[
      (Platform.isIOS)
          ? CupertinoActivityIndicator()
          : CircularProgressIndicator(),
      (Platform.isIOS) ? SizedBox(height: 10) : SizedBox.shrink(),
      Text(title),
      (Platform.isIOS) ? SizedBox(height: 10) : SizedBox.shrink(),
      Text(message),
      (Platform.isIOS) ? SizedBox(height: 10) : SizedBox.shrink(),
    ],
  );

  var alert;

  // set up the AlertDialog
  if (Platform.isAndroid) {
    alert = AlertDialog(
      content: Container(
        child: alertBodyWidget,
      ),
    );
  } else {
    alert = CupertinoAlertDialog(
      content: alertBodyWidget,
    );
  }

  // show the dialog
  if (context != null) {
    showDialog(
      context: context,
      barrierDismissible: isDismissible,
      builder: (BuildContext context) {
        return alert;
      },
    ).then(
      (val) {
        if (onDismissAction != null) {
          onDismissAction();
        }
      },
    );
  }
}