アプリ開発・ゲーム開発のための勉強ブログ

FlutterとUnrealEngineの勉強をしています。

【Flutter】StatelessWidgetとStatefulWidgetのライフサイクル

StatelessWidget

その名の通り状態を持たないウィジェット

一度画面を描画するとその後状態が変化しない

固定のテキストやアイコン等

 

最初の画面構築時にコンストラクタが呼び出されてから一度だけbuild()が呼び出される

 

StatefulWidget

状態を持つウィジェット

ユーザー操作や時間経過によって状態が変化する

チェックボックスやテキストフィールド等

 

StatefulWidgetは2つのクラスで構成されている

_のついたクラスのオブジェクトを生成

_のついたクラスで具体的な状態を保持

 

StatefulWidgetは3つのタイミングでbuild()が呼び出される

最初の画面構築時・親ウィジェットの更新時・状態の更新時

 

StatefulWidgetのライフサイクル

createState()→initState()→build()

didUpdateWidget()→build() :親ウィジェットの更新

setState()→build() :状態の更新

dispose() :状態の破棄 ウィジェットの消失前に

 

 

両者のライフサイクル

 

参考資料

www.nucleiotechnologies.com