Flutterでライフサイクルを簡単に説明していく

この記事では、Flutterのライフサイクルについて簡単にまとめていく。

厳密にはもっと複雑な処理をしていくが、初心者向けに最低限のことをまとめていく。

FlutterのStatefulWidgetのライフサイクルについて

StatelessWidgetとStatefulWidgetがあるが、今回はStatefulだけ解説。

StatefulWidgetの主なライフサイクルは以下の通り。 これらはコード内で実際に触れるものだ。

initState → build → (setState) → dispose

1つ1つ紹介する。

initState

このWidgetを初期化するときに呼ばれる。タイミング的には、WidgetTreeに組み込まれたあとに呼ばれる。

初期化に関することなので、ここでWidgetに関係するAnimationControllerを定義することが多い。

初期化のときに1回だけ呼ばれる。

build

Widgetを構築して、画面に表示する時に呼ばれる。 このメソッドはoverrideして自前で定義することが多いだろう。

再描画されるときも呼ばれる。

setState

とあるボタンをクリックしたりしてWidgetの状態変化を伝えたい時に呼ぶメソッド。

このsetStateを呼び出すことで、Widgetは状態の変化を検知して、buildメソッドを使って Widgetを再描画しようと試みる。

dispose

Widgetが破棄される時に呼ばれるメソッド。