我在应用程序的根目录中有一个InheritedWidget,基本上在我的第一个Scaffold的第一个构建函数的顶部。我可以使用.of(context)函数引用该窗口小部件,就可以从第一页的所有子窗口小部件中引用它。如果我将另一个页面推送到Navigator堆栈上,则InheritedWidget.of()调用失败,正如我认为的那样。有没有办法共享对此小部件的访问权限?我试图避免不必要地将小部件传递到树上。 ScopedModel具有相同的限制。我当时正在考虑将上下文变量传递到树上,但这听起来不对,也不能解决问题。

最佳答案

您应该用它包装您的根小部件,例如MaterialApp

MyInheritedWidget(
      child: MaterialApp(
        home: home))

08-15 19:20