Flutter學習隨筆-1

警告: 學習隨筆為筆者學習時的隨意紀錄,並非系統性的整理。筆者可能也是一知半解。


StatelessWidget : 無法改變、沒有狀態的widget

StatefulWidget: 也是不可變的,但是有帶一個可變的createState()方法,所以可以將可變狀態儲存在裡面。

setState() : 標記可能需要改變的地方,呼叫到的時候就會重新繪製。


State 的生命週期

  • StatefulWidget 呼叫 createState 建立 State 時,mounted 為 true。
  • initState():第一次建立 State 時,進行一次性的初始化。
  • didChangeDependencies():在這裏進行 InheritedWidget 有關聯的初始化。
  • build():在每次更新畫面時都會呼叫;以及呼叫 setState() 更新 state 時。
  • didUpdateWidget():當父 Widget 重新建立子 Widget 時,以顯示含有相同的 runtimeType 以及 Widget.key 的 Widget 時。
  • deactive():父 Widget 刪除了子 Widget 時呼叫。
  • dispose():最後,當 Widget 被銷毀前,會呼叫 dispose()。
  • 最後,mounted 為 false。

引用資料: https://medium.com/flutter-taipei/%E4%BE%86%E5%90%A7-flutter-4-stateless-v-s-stateful-widget-515746081498

留言