flutter - 在处理 flutter 之前删除listerers

标签 flutter

如果我在 initState() 中初始化一个观察者,例如

textController.addListener(textTypedListener);

在处理文本 Controller 之前,我是否需要手动删除监听器?或者 dispose 会自动处理这个问题。

例如。选项 1
 @override
  void dispose() {
    textController.removeListener(textTypedListener);
    textController.dispose();
    super.dispose();
  }

选项 2
 @override
  void dispose() {
    textController.dispose();
    super.dispose();
  }

哪个最好?

非常感谢。

最佳答案

根据Interactive Example 的 flutter 文档中给出处理对文本字段的更改 , 评论说 调用 dispose 也会删除监听器 .

所以第二种选择是最好的。

关于flutter - 在处理 flutter 之前删除listerers,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61759948/

相关文章:

flutter - 行中忽略的小部件对齐

flutter - 如何在Firebase Phone Auth中使用Flutter Bloc

Flutter 应用程序在发布构建中比调试慢得多

Flutter - 相反方向的圆角边框

Flutter:在数据库中插入数据列表的有效方法

dart - 布局更改不适用于测试

flutter - 如何通过Flutter应用在Instagram feed上发布链接?

list - 如何在 flutter 中制作变量列表?

flutter - 如何在 Flutter CustomPainter 中使用贝塞尔曲线绘制形状

flutter - 常量创建的参数必须是常量表达式,同时使用卡住实现模型