您好,欢迎来到九壹网。
搜索
您的当前位置:首页Unhandled Exception: Looking up a deactivated widget's ancestor is unsafe.

Unhandled Exception: Looking up a deactivated widget's ancestor is unsafe.

来源:九壹网

一、具体错误:

 

二、描述

项目中在主界面发起弹窗,然后在回调函数中又发起等待弹窗。等待弹窗的context继承自第一个弹窗。当第一个弹窗

 Navigator.pop(context);之后,他的context不可用。所以当对等待弹窗调用context的时候,会报这个出错。

                            showDialog(
                                  context: context,
                                  barrierDismissible: true,
                                  builder: (context) {
                                    return BackupDialog(
                                      sure: (type) {
                                        model.backup(type, context);
                                      },
                                    );
                                  },
                                ),    

tip:注意BackDialog的回调方法sure,其中的backup方法传的是自身的context。将其改为父context即可。如下

                                showDialog(
                                  context: context,
                                  barrierDismissible: true,
                                  builder: (_) {
                                    return BackupDialog(
                                      sure: (type) {
                                        model.backup(type, context);
                                      },
                                    );
                                  },
                                ),

三、总结

当出现该问题的时候,是由于context已经被销毁,变得不可用。请检测后面执行的代码是否依赖了销毁的context。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 91gzw.com 版权所有 湘ICP备2023023988号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务