第1章 跨平颱開發的發展/1
1.1 跨平颱開發的演進/2
1.2 Cordova/2
1.3 React Native/3
1.4 Flutter/4
1.5 綜閤對比/6
1.5.1 開發環境/6
1.5.2 實現原理/7
1.5.3 開發語言/7
1.5.4 界麵開發/8
1.5.5 插件開發/11
1.5.6 編譯和産物/12
1.5.7 熱更新和支持平颱/12
第2章 走進Flutter的世界/14
2.1 開發環境/15
2.1.1 前置準備 15
2.1.2 安裝Flutter開發環境/17
2.1.3 配置編輯器/18
2.2 Dart語言/24
2.2.1 基礎語法/24
2.2.2 setter/getter/25
2.2.3 final/const/26
2.2.4 import/26
2.2.5 基礎數據類型/26
2.2.6 邏輯語句與操作符/29
2.2.7 var與dynamic/31
2.2.8 函數方法/32
2.2.9 類、接口和繼承/32
2.2.10 mixins/34
2.2.11 構造方法/36
2.2.12 異常處理/36
2.2.13 Isolate/37
2.2.14 Zone/38
2.2.15 異步執行/39
2.2.16 拓展方法/41
2.3 Flutter控件介紹/42
2.3.1 無狀態控件(StatelessWidget)/42
2.3.2 有狀態控件(StatefulWidget)/43
2.3.3 Flutter常用控件/45
2.3.4 Flutter頁麵/50
2.3.5 路由跳轉/53
2.4 Flutter常見開發技巧/55
2.4.1 常見的問題處理/55
2.4.2 Widget Key/58
2.4.3 獲取狀態欄高度和字體縮放/61
2.4.4 狀態欄顔色和圖標顔色/62
2.4.5 控件圓角裁剪/62
2.4.6 懶加載/64
2.4.7 ChangeNotifier/65
第3章 Flutter的靈魂:Widget/68
3.1 配置文件Widget/69
3.2 大腦倉庫Element/71
3.2.1 Element的大腦中樞/72
3.2.2 Element的倉庫存儲/73
3.2.3 Element的分類/75
3.2.4 Element橋接連通/76
3.3 繪製實例RenderObject/77
3.3.1 RenderObject的子類/77
3.3.2 RenderPadding/80
3.3.3 RenderObject的繪製/83
3.4 渲染圖層Layer/86
第4章 Flutter Widget分類對比/90
4.1 Widget的狀態分類/91
4.2 Element分類/98
4.3 RenderObject分類/101
4.3.1 RenderBox/102
4.3.2 RenderSliver/104
4.3.3 ViewPort/107
4.4 單元素與多元素分類/122
4.4.1 自定義MultiChildRenderObjectWidget/123
4.4.2 CustomMultiChildLayout/130
4.5 InheritedWidget共享狀態/133
4.6 ErrorWidget異常處理/136
第5章 Flutter Framework/138
5.1 綫程模型/139
5.2 動畫實現/145
5.2.1 路由動畫/149
5.2.2 Hero動畫/150
5.2.3 Flare動畫/153
5.3 手勢與觸摸/157
5.3.1 事件流程/158
5.3.2 hitTest/159
5.3.3 dispatchEvent/160
5.3.4 事件競爭/161
5.3.5 PointerDownEvent/161
5.3.6 開始競爭/163
5.3.7 滑動事件/165
5.4 滑動Physic/166
5.4.1 ScrollConfiguration/167
5.4.2 ScrollPhysics的工作原理/169
5.4.3 applyPhysicsToUserOffset/171
5.4.4 applyBoundaryConditions/172
5.4.5 createBallisticSimulation/172
5.4.6 Simulation/174
5.5 圖片加載/175
5.6 網絡請求/188
第6章 Flutter狀態管理/190
6.1 Flutter中的狀態管理/191
6.2 Stream/193
6.2.1 Stream的簡單使用/193
6.2.2 Stream的工作流程 194
6.2.3 Stream中的同步和異步/197
6.2.4 Stream中的廣播和非廣播/198
6.2.5 Stream的變換/199
6.2.6 StreamBuilder/199
6.2.7 RxDart/200
6.3 BLoC/201
6.4 scoped_model/204
6.5 flutter_redux/206
6.6 Provider/212
6.7 總結對比/218
第7章 混閤開發 220
7.1 Flutter混閤開發/221
7.2 Flutter工程集成原生插件/225
7.2.1 MethodChannel/227
7.2.2 PlatformView/231
7.2.3 新版Android Plugin/242
7.3 原生工程集成Flutter項目/244
7.4 FlutterBoost/249
第8章 Flutter開發實戰/253
8.1 Flutter開發中的入口/254
8.1.1 程序入口/254
8.1.2 應用入口/254
8.1.3 頁麵入口/256
8.2 基礎控件/258
8.2.1 TabWidget/258
8.2.2 AppBar/265
8.2.3 下拉刷新和底部加載更多/268
8.2.4 輸入框/274
8.2.5 矢量圖庫/281
8.2.6 自定義繪製/282
8.2.7 Align和Positioned/285
8.2.8 控件小技巧/288
8.3 路由跳轉/291
8.4 狀態管理/293
8.4.1 BLoC另類的實現/293
8.4.2 redux的攔截處理/296
8.4.3 scoped_model的局部共享數據/299
8.5 網絡請求/302
8.5.1 序列化/307
8.5.2 built_value序列化/309
8.6 多語言與主題/310
8.6.1 主題/312
8.6.2 多語言/313
8.7 多環境配置/317
8.8 完整項目實戰/320
第9章 調試打包/322
9.1 JIT與AOT/323
9.2 Android打包/324
9.3 iOS打包/326
9.4 Web和PC打包/328
9.5 性能調試/328
9.6 開發工具/332
9.6.1 DartPad/332
9.6.2 Supernova/332
9.6.3 Hot UI/334
9.6.4 Layout Explorer/335
· · · · · · (
收起)