Flutterでライフサイクルを簡単に説明していく
この記事では、Flutterのライフサイクルについて簡単にまとめていく。
厳密にはもっと複雑な処理をしていくが、初心者向けに最低限のことをまとめていく。
FlutterのStatefulWidgetのライフサイクルについて
StatelessWidgetとStatefulWidgetがあるが、今回はStatefulだけ解説。
StatefulWidgetの主なライフサイクルは以下の通り。 これらはコード内で実際に触れるものだ。
initState → build → (setState) → dispose
1つ1つ紹介する。
initState
このWidgetを初期化するときに呼ばれる。タイミング的には、WidgetTreeに組み込まれたあとに呼ばれる。
初期化に関することなので、ここでWidgetに関係するAnimation
やController
を定義することが多い。
初期化のときに1回だけ呼ばれる。
build
Widgetを構築して、画面に表示する時に呼ばれる。 このメソッドはoverrideして自前で定義することが多いだろう。
再描画されるときも呼ばれる。
setState
とあるボタンをクリックしたりしてWidgetの状態変化を伝えたい時に呼ぶメソッド。
このsetState
を呼び出すことで、Widgetは状態の変化を検知して、build
メソッドを使って
Widgetを再描画しようと試みる。
dispose
Widgetが破棄される時に呼ばれるメソッド。