簡體   English   中英

如何在 flutter 中發出可忽略的警報?

[英]How can I make a dismissible alert in flutter?

我可以顯示警報,但無法關閉它。 但為什么?

編碼:

showGeneralDialog(
        barrierColor: Colors.red,
        context: context,
        barrierDismissible: true,
        barrierLabel: MaterialLocalizations.of(context).modalBarrierDismissLabel,
        transitionDuration: const Duration(milliseconds: 300),
        pageBuilder: (BuildContext buildContext, Animation animation,
            Animation secondaryAnimation) {
          if (shouldDismiss) {
            Future.delayed(const Duration(seconds: 3), () {
              Navigator.of(context, rootNavigator: true).pop(true);
            });
          }
          return SomeWidget();

替換這個

 Navigator.of(context, rootNavigator: true).pop(true);

這樣

 Navigator.of(buildContext, rootNavigator: true).pop(true);

好的,所以問題出在

SomeWidget()

它里面有一個孩子,叫做WillPopScope()並且這個小部件有一個參數: onWillPop: () async => bool this boolean was false ,這就是我無法關閉的原因......

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM