Wiki_Flutter_BuildContext - inoueshinichi/Wiki_Flutter GitHub Wiki

FlutterのBuildContext

参考

WidgetとElement

  • Stateは, StatefullWidgetよりもライフサイクルが長い
  • StateとElementのライフサイクルは一致する
  • Stateは, StatefulElementのエイリアス
  • Elementは, Reactの仮想DOMのように再利用する機構がある

RenderObjectElement

  • Elementクラスの中にはRenderObjectElementクラスがある
  • RenderObjectElementクラスは, RenderObjectクラスを管理している
  • RenderObjectElementクラスの集合で独自ツリー構造を構築している

RnderObject

  • 高コスト計算の処理を担当する(下記をツリー構造の末端まで行う)
  1. Widgetのレイアウト計算
  2. RenderObjectの親から子への制約を設定
  3. FlutterFrameWorkより下層のFlutterEngineに描画依頼
  • 描画に必要な状態を保持してコストの高い処理をスキップする機構を持つ(=Reactの仮想DOMと同じ思想)