Quantcast
Channel: 簡睿隨筆
Viewing all articles
Browse latest Browse all 897

03. 更多的Flutter範例:StatelessWidget、StatefulWidgett與其他Widgets

$
0
0

知識點

  1. 抽象類別:StatelessWidget, StatefulWidget
  2. Widgets: Column, RaisedButton, Container, Padding
  3. 類別:EdgeInsets, Random

兩大抽象類別

Widget的兩大類型:

  • StatelessWidget:無狀態的Widget,靜態內容
    • 初始化之後就無法改變
    • build只會執行一次
    • 如果想改變,便需要重新建立另一個StatelessWidget來替換
  • StatefulWidget:有狀態的Widget,適用於有變動內容之狀況
    • 簡單說就是會與使用者互動的就是StatefulWidget
    • 當狀態變動(透過setState標示本身狀態為dirty)時,系統下一次重繪檢查時調用build重繪Widget
    • 在State.setState((){})中寫什麼都可以,它只是用來標記其物件需要重新build,重新build後依據已變動的資料來建立新的Widget
    • StatefulWidget的系統消耗成本較高,應封裝成越小範圍的內容

IDEA的撰寫輔助,除了上次介紹的〔Alt+Enter〕、〔Ctrl+P〕、〔Ctrl+Q〕外,也可使用
〔Ctrl+Shift+I〕: Quick Definition。

解說影片


##

您可能也會有興趣的類似文章


Viewing all articles
Browse latest Browse all 897

Trending Articles