处理方法未被调用

dispose method not getting called

在我的主页中,我有两个选项卡,分别名为选项卡 1 和选项卡 2。当切换到选项卡 2 时,右上角有一个图标 corner.When 单击该图标将打开页面 C。

我注意到当我从选项卡 1 切换到选项卡 2 时,它会在选项卡 1 中调用 dispose。 当我从选项卡 2 切换到选项卡 1 时,将调用 tab2 dispose

但是,当我单击选项卡 2 中的图标导航到页面 c 时,选项卡 2 中的 dispose 未被调用。 当我点击图标导航到页面 C 时,如何调用 dispose 方法?

您正在使用 Navigator.pushNamed 方法将页面 C 推到顶部。这会创建一堆页面,因此标签页不会被丢弃,它们仍然存在,只是不可见。使用 Navigator.pushReplacementNamed 代替当前页面并将旧页面从堆栈中取出并 dispose 它。