归功于@Remi,
initState()是有状态窗口小部件插入到窗口小部件树中时被调用一次的方法。
如果需要进行某种初始化工作(例如注册侦听器),则通常会覆盖此方法,因为与
build()调用此方法不同。
并且要注销您的侦听器(或进行一些后期工作),请重写
dispose()method。
从这里
State的子类可以重写initState来完成只需要发生一次的工作。例如,重写initState可配置动画或订阅平台服务。需要通过调用super.initState来启动initState的实现。
当不再需要状态对象时,框架会在状态对象上调用dispose()。覆盖处理功能以执行清理工作。例如,覆盖处置可取消计时器或取消订阅平台服务。Dispose的实现通常以调用super.dispose结尾



