Prevent dialog from closing on outside touch in Flutter Prevent dialog from closing on outside touch in Flutter ios ios

Prevent dialog from closing on outside touch in Flutter


There's a property called barrierDismissible that you can pass to showDialog ; which makes dialogs dismissible or not on external click

showDialog(  barrierDismissible: false,  builder: ...)


If you want to prevent dialog close when back button pressed then refer below code. You have to wrap your AlertDialog in WillPopScope widget and make onWillPop property value with function which return Future.value(false).

showDialog(      barrierDismissible: false,      context: context,      builder: (BuildContext context) {        return WillPopScope(            onWillPop: () => Future.value(false),            child:AlertDialog(            title: new Text("Alert Title"),            content: new SingleChildScrollView(              child: Container(),),            actions: <Widget>[              new FlatButton(                child: new Text("Close"),                onPressed: () {                },              ),            ],          )        )      },    );


just Add this Line

barrierDismissible: false,

like as

       showDialog(        barrierDismissible: false,        context: context,        builder: (BuildContext context) {          return AlertDialog(            title: Text(              "Classes",              style: TextStyle(                  fontSize: 24, color: Colors.black, fontFamily: 'intel'),            ),            content: setupAlertDialoadClassList(                context, listClasses, Icons.class__outlined, 0),          );        });