Flutter showDialog禁止关闭

showDialog 点击空白区域禁止弹窗关闭可以设置:barrierDismissible: false

禁止物理按键的返回键或者侧滑关闭可以使用 WillPopScope 组件,onWillPop 函数返回 false

showDialog<bool>(
      context: context,
      builder: (BuildContext context) {
        return WillPopScope(child: GestureDetector(
          behavior: HitTestBehavior.translucent,
          onTap: () {
            FocusManager.instance.primaryFocus?.unfocus();
          },
          child: Container(
            margin: EdgeInsets.symmetric(
                horizontal: 60.w, vertical: ScreenUtil().screenHeight / 4),
            padding: EdgeInsets.symmetric(horizontal: 20.w),
            decoration: BoxDecoration(
              color: Colors.white,
              borderRadius: BorderRadius.circular(24.r),
            ),
            child: StatefulBuilder(
              builder: (BuildContext context, StateSetter setter) {
                return Text('test');
              },
            ),
          ),
        ), onWillPop: ()async{
          return false;
        });
      });
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容