基礎知識篇
第1章Flutter開發起步(42min)
1.1Flutter開發入門基礎
1.1.1Flutter環境搭建概述
1.1.2Dart語言與Flutter概述
1.2Dart語言核心基礎
1.2.1Dart 變量與方法
1.2.2Map、List、Set 的基本使用概述
1.2.3Dart中的流程控制
1.2.4Dart 異常(Exception)處理
1.3Flutter項目創建與配置文件
1.3.1pubspec配置文件中依賴庫引用說明
1.3.2圖片等資源管理配置
1.3.3Flutter App的調試技巧
1.3.4Flutter Widget基本概述
1.4小結
第2章Flutter基礎組件核心基礎
2.1MaterialApp用來搭建程序的入口
2.1.1路由配置
2.1.2語言環境配置
2.2Scaffold 用來搭建頁面主體
2.2.1AppBar用來配置頁面的標題
2.2.2FloatingActionButton懸浮按鈕效果
2.2.3側拉頁面Drawer
2.2.4常用底部導航菜單欄
2.2.5小提示框SnackBar
2.3Text用來顯示文件段落
2.3.1Text文本的常用屬性配置
2.3.2TextStyle用來配置文本顯示樣式
2.3.3RichText實現多種文本風格組合顯示
2.3.4SelectableText實現文件顯示
2.4TextField用來實現文本輸入功能
2.4.1TextField文本輸入的常用屬性配置
2.4.2文本輸入框的邊框配置
2.4.3TextField 輸入內容的監聽與獲取
2.5按鈕實現用戶單擊事件
2.5.1常用按鈕Button概述
2.5.2抖動按鈕
2.5.3ActionChip 膠囊組合按鈕
2.5.4懸浮拖動按鈕
2.6其他常用Widget概述
2.6.1Image用來顯示圖片
2.6.2Container用來設置邊框樣式
2.6.3ShaderMask實現利用輪廓
2.6.4SizedBox用來限制子Widget大小
2.7小結
第3章Flutter UI布局排版組件核心基礎(24min)
3.1Column與Row實現線性排列
3.1.1Column用來實現豎直方向線性排列
3.1.2Row用來實現水平方向線性排列
3.1.3Column與Row中子Widget按比例權重布局
3.2非線性布局綜合概述
3.2.1Stack用來實現層疊布局
3.2.2Wrap用來實現層疊布局
3.2.3實現登錄頁面
3.3彈框用於提示用戶信息
3.3.1showDialog顯示基本彈框
3.3.2showCupertinoDialog顯示蘋果風格彈框
3.3.3showBottomSheet底部顯示彈框
3.3.4showModalBottomSheet底部彈出對話框
3.4小結
第4章Flutter常用組件核心基礎
4.1加載過渡指示器
4.1.1線性指示器LinearProgressIndicator
4.1.2圓形指示器CircularProgressIndicator
4.1.3小菊花CupertinoActivityIndicator
4.2單選框Radio、復選框CheckBox、開關Switch
4.2.1單選框Radio組件
4.2.2單選框RadioListTile
4.2.3復選框CheckBox
4.2.4復選框CheckboxListTile
4.2.5開關Switch
4.3手勢處理
4.3.1GestureDetector手勢監聽
4.3.2Ink與InkWell
4.4其他常用交互視覺類型組件
4.4.1Clip裁剪繫列組件
4.4.2Card用來實現卡片效果
4.4.3分段選擇標簽效果
4.4.4手機橫屏與豎屏處理
4.5小結
第5章滑動視圖(5min)
5.1長頁面滑動視圖
5.1.1滑動組件SingleChildScrollView
5.1.2滑動布局NestedScrollView與SliverAppBar
5.1.3滑動組件CustomScrollView
5.2列表數據展示
5.2.1ListView用來構建常用的列表數據頁面
5.2.2GridView用來構建二維宮格頁面
5.2.3PageView實現頁面整屏切換
5.3滑動視圖的應用
5.3.1ListView下刷新與分頁加載
5.3.2蘋果風格下拉刷新
5.3.3PageView實現輪播圖特效
5.3.4NestedScrollView下拉刷新失效問題
5.3.5滾動監聽NotificationListener
5.3.6ListView實現自動滾動標簽效果
5.4小結
核心功能篇
第6章動畫專題(3min)
6.1基本動畫
6.1.1透明度漸變動畫
6.1.2縮放動畫
6.1.3平移動畫
6.1.4旋轉動畫
6.2高級動畫應用提升用戶視覺體驗
6.2.1ColorTween顏色動畫過渡
6.2.2跳動動畫效果
6.2.3Hero屏素動畫
6.2.4Path繪圖高級動畫
6.2.5AnimatedSwitcher實現頁面局部動畫切換
6.2.6左右抖動動畫效果
6.3AnimatedWidget應用分析
6.3.1實現單擊高亮自定義按鈕
6.3.2AnimatedBuilder應用實踐
6.3.3AnimatedModalBuilder應用實踐
6.3.4彈簧動畫應用實踐
6.4小結
第7章狀態管理專題(75min)
7.1入門級數據管理與更新
7.1.1InheritedWidget 數據共享
7.1.2ValueNotifier單數據模型通信
7.1.3ValueNotifier自定義模型通信
7.2Stream流通信
7.2.1多訂閱流實現多組件同步數據
7.2.2單訂閱流實現計時功能
7.3Provider狀態管理
7.3.1Provider單數據模型通信
7.3.2Provider多數據模型通信
7.4GetX 狀態管理
7.4.1GetX路由管理功能
7.4.2GetX 局部數據更新
7.4.3GetX 依賴注入
7.4.4GetXBinding自動管理內存
7.4.5Obx 響應式編程
7.5小結
第8章繪圖專題
8.1繪制基本圖形
8.1.1繪圖基礎知識概述
8.1.2繪制點與線
8.1.3繪制矩形與圓角矩形
8.1.4繪制圓與橢圓
8.2Path自定義圖形
8.2.1Path構建基本圖形
8.2.2二階貝塞爾曲線繪制弧線
8.2.3三階貝塞爾曲線繪制弧線
8.2.4Path依據進度實現動態繪制
8.2.5Path結合PathMetric實現動態繪制
8.3繪圖對文本與圖片方面的支持
8.3.1繪制文本段落
8.3.2繪制圖片
8.3.3繪制圖片添加水印
第9章混合開發專題(5min)
9.1Flutter與原生(Android、iOS)雙向通信
9.1.1MethodChannel實現消息監聽與發送
9.1.2BasicMessageChannel實現消息監聽與發送
9.1.3EventChannel實現消息監聽與發送
9.2Flutter調用原生View
9.2.1內嵌Android原生View
9.2.2內嵌iOS原生View
9.3原生項目內嵌Flutter模塊
9.3.1Android中集成Flutter模塊
9.3.2iOS中集成Flutter模塊
9.4插件開發
9.4.1Flutter端開放Widget
9.4.2Android端創建TextView並解析文本
9.4.3iOS端創建WKWebView並解析文本
9.4.4插件發布
9.4.5插件API升級
9.5小結
第10章文件操作與網絡請求
10.1異步編程
10.1.1async與await的基本使用
10.1.2Future實現延時任務
10.1.3Timer實現定時任務
10.1.4FutureBuilder實現異步任務更新
10.2文件的讀寫
10.2.1資源目錄assets文件讀取
10.2.2手機磁盤文件讀寫
10.2.3SharedPreferences輕量級數據保存
10.2.4sqflite數據庫數據操作
10.3網絡請求
10.3.1HttpClient網絡請求操作
10.3.2網絡請求庫Dio
10.3.3選擇圖片插件
10.4小結
實戰應用篇
第11章Flutter應用基礎框架(28min)
11.1App應用程序基本配置概述
11.1.1App基本信息配置
11.1.2Android 平臺開發配置
11.1.3Android打包發布APK
11.1.4iOS打包發布
11.2App開發工具類概述
11.2.1常用工具類概述
11.2.2網絡請求與頁面交互狀態顯示
11.2.3網絡請求工具類封裝概述
11.3App應用搭建
11.3.1Android與iOS雙平臺的閃屏頁面
11.3.2應用根視圖基本配置
11.3.3啟動頁面動態權限申請
11.3.4加載PDF文件顯示
11.3.5滑動引導頁面與倒計時頁面
11.3.6應用首頁
11.4小結
第12章GetX架構視頻應用開發(13min)
12.1App應用程序根視圖配置
12.1.1啟動頁面初始化配置
12.1.2倒計時頁面架構剝離
12.2應用首頁面
12.2.1首頁面底部菜單導欄
12.2.2應用版本檢查更新
12.3視頻列表頁面架構構建
12.3.1視頻列表數據與UI構建
12.3.2視頻播放控制UI頁面構建
12.3.3視頻播放功能控制
12.3.4性能優化小提示
12.4小結