Flutter应用生命周期回调函数

时间:2019-08-28 16:17:05

标签: android flutter dart

我正在使用Flutter SDK制作应用程序,但由于我不知道是否有任何flutter回调方法(如本机android activity回调方法中)而陷入困境。 请让我知道是否有。 谢谢

2 个答案:

答案 0 :(得分:6)

  1. createState(): 当指示框架构建StatefulWidget时,它将立即调用createState()

  2. 已安装为真: 当createState创建状态类时,会将buildContext分配给该状态。 BuildContext被过度简化,该小部件在小部件树中的放置位置。这是更长的解释。 所有小部件都具有bool this.mount属性。分配buildContext后,它变为true。卸载小部件时调用setState是错误的。

  3. initState(): 这是在创建窗口小部件时(当然在类构造函数之后)调用的第一个方法。initState只会被调用一次,并且只会被调用一次。它必须调用super.initState()。

  4. didChangeDependencies(): 第一次构建窗口小部件后,将在initState之后立即调用此方法。

  5. build(): 这种方法经常被调用。它是必需的,并且必须返回一个Widget。

  6. didUpdateWidget(Widget oldWidget): 如果父窗口小部件发生更改并且必须重建此窗口小部件(因为需要为其提供不同的数据),但是使用相同的runtimeType对其进行重建,则将调用此方法。 这是因为Flutter正在重用长期存在的状态。在这种情况下,您可能希望像initState一样再次初始化一些数据。

  7. setState(): 通常从框架本身和开发人员调用此方法。它用于通知框架数据已更改

  8. 停用(): 当从树中删除State时,将调用Deactivate,但是可以在当前帧更改完成之前重新插入它。之所以存在此方法,是因为State对象可以从树中的一个点移动到另一点。

  9. dispose(): 当移除State对象时,将调用Dispose,这是永久的。 您可以在此方法退订并取消所有动画,流等。

  10. 安装错误: 状态对象永远无法重新安装,并且调用setState会引发错误。

答案 1 :(得分:1)

这里是状​​态化Flutter小部件的“生命周期”的直观表示。 enter image description here如果您是该语言的新手,这是一个有用的参考。