Flutter 從 React 中吸收靈感(若是有react的編程經驗,會很容易理解flutter),經過現代化框架建立出精美的組件。
它的核心思想是用 widget 來構建你的 UI 界面。 在flutter中,一切都是Widget,Widget描述了在當前的配置和狀態下視圖所應該呈現的樣子。當 widget 的狀態改變時,它會從新構建其描述(展現的 UI),框架則會對比先後變化的不一樣,以肯定底層渲染樹從一個狀態轉換到下一個狀態所需的最小更改
下面是一些經常使用的widgetreact
爲了得到(MaterialApp)主題的數據,許多 Material Design 的 widget 須要在 MaterialApp 中才能顯現正常。所以,請使用 MaterialApp 運行應用,以下:
web
大多數應用都須要經過系統來處理一些用戶交互。構建交互式應用程序的第一步是檢測輸入手勢,這裏經過建立一個簡單的按鈕來了解其工做原理:
GestureDetector widget 沒有可視化的展示,但它能識別用戶的手勢。當用戶點擊 Container 時, GestureDetector 會調用其 onTap() 回調,在這裏會向控制檯打印一條消息。你可使用 GestureDetector 檢測各類輸入的手勢,包括點擊,拖動和縮放。
許多 widget 使用 GestureDetector 爲其餘 widget 提供可選的回調。例如,IconButton、RaisedButton 和 FloatingActionButton widget 都有 onPressed() 回調,當用戶點擊 widget 時就會觸發這些回調。
爲了構建更復雜的體驗,例如,以更有趣的方式對用戶輸入作出反應—應用一般帶有一些狀態。 Flutter 使用 StatefulWidgets 來實現這一想法。 StatefulWidgets 是一種特殊的 widget,它會生成 State 對象,用於保存狀態。
上面的程序有幾點須要注意:編程
下一章節,咱們介紹segmentfault