屏幕不弹出时如何配置streamController?

时间:2020-09-15 15:42:08

标签: flutter

因为我使用了将pushNamed导航到屏幕B(我想将当前屏幕(屏幕A)保留在堆栈中),所以不会触发屏幕A中的StatefulWidget的dispose函数,所以流仍然存在。 那么,我如何知道将导航pushName命名为Screen B,然后才能关闭流?当我回到屏幕A时,重新启动流。

非常感谢。

1 个答案:

答案 0 :(得分:0)

这对您有帮助吗?

navigate()async{

    streamSubscription.cancel();
    await Navigator.of(context).pushNamed('routeName');
    streamSubscription = streamController.stream.listen((event) { });

}