JavaShuo
欄目
標籤
從頭至尾擼一遍Flutter的一切...
時間 2020-04-22
標籤
從頭至尾
一遍
flutter
一切
简体版
原文
原文鏈接
Flutter學(cai)習(keng)之路(Exploring Flutter in action)
創世宣言
盡情踩坑吧 ⤵️
主要Cover到的點
路由界面
狀態傳遞
子Widget樹獲取父級StatefulWidget的State對象
基礎控件
隨機字符串
文本控件,字體樣式(Text/TextStyle/Text.rich/TextSpan)
按鈕系列(RaisedButton/FlatButton/OutlineButton/IconButton/FlatButton.icon/shape)
圖片系列(ImageProvider/Image/Image.asset/Image.network)
單選開關和複選框Switch/Checkbox
輸入框和表單(TextField/Form/TextFormField/FormState)
登陸表單(TextField/Form/TextFormField/FormState)
各類樣式的進度條(LinearProgressIndicator/CircularProgressIndicator)
佈局控件
線性佈局(Row/Column)
彈性佈局(Flex/Expanded/Spacer)
流式佈局(Wrap/Flow)
層疊佈局(Stack/Positioned)
對齊與相對定位(Align/Alignment/FractionalOffset/Center)
容器控件
填充(Padding/EdgeInsets)
尺寸限制(ConstrainedBox/BoxConstraints/SizedBox/UnconstrainedBox)
裝飾(DecoratedBox)
變換(Transform/Matrix4(做用於繪製階段)/RotatedBox(做用於佈局階段))
容器(Container(多種裝飾和填充等組件的組合)/Padding/Margin)
裁減(Clip/CustomClipper(裁減動做的做用時期與Transform相同,都做用於繪製階段))
通用類導航主界面(Scaffold/AppBar/TabBar/TabBarView/Drawer/FloatingActionButton)
列表控件
單child滾動控件(SingleChildScrollView/Scrollbar)
有限列表項狀況下使用ListView(ListView)
衆多列表項狀況下使用ListView(ListView.builder)
帶分割線的列表項狀況下使用ListView(ListView.separated)
下拉刷新
和
上拉加載更多
(初始化加載數據、結束時的標記、根據index判斷底部是繪製結束的Widget仍是正在加載時的Widget、Widget的正常顯示)
有限GridView(GridView + SliverGridDelegateWithFixedCrossAxisCount)
有限GridView.count(效果徹底等價於GridView + SliverGridDelegateWithFixedCrossAxisCount)
有限GridView(GridView + SliverGridDelegateWithMaxCrossAxisExtent)
有限GridView.extent(效果徹底等價於GridView + SliverGridDelegateWithMaxCrossAxisExtent)
無限GridView加載(GridView.builder)
滾動監聽(ScrollController/ScrollPosition)
觸摸反饋
事件處理
原始指針(觸摸事件)(擼一個觸摸板)(Listener)
事件冒泡
不一樣事件冒泡行爲之比較(HitTestBehavior.deferToChild/HitTestBehavior.opaque/HitTestBehavior.translucent/IgnorePointer)
手勢識別
點擊/雙擊/長按/拖動/滑動(GestureDetector)
縮放(GestureDetector)
GestureRecognizer(
當所修飾的對象不爲widget且具備recognizer節點時可用
)
事件總線
簡易EventBus(Dart實現)
EventBus界面演示
通知
通知事件名稱(NotificationListener.onNotification)
自定義通知(覆寫Notification + NotificationListener)
通知冒泡(onNotification回調中的return value)
存儲路徑訪問和文件操做
存儲路徑訪問(訪問緩存/訪問包路徑/訪問SD卡)(PathProvider)
網絡編程
HttpClient
Dio(本質是基於HttpClient封裝的上層API)
更多Dio版本信息及API(官方地址)
功能控件及數據狀態管理(InheritedWidget)
導航返回鍵和實體返回鍵攔截(再按一次確認退出)(WillPopScope)
控件跨級傳遞數據(InheritedWidget/dependOnInheritedWidgetOfExactType/getElementForInheritedWidgetOfExactType/updateShouldNotify/didChangeDependencies)
跨控件狀態管理(手動實現Provider)
第三方Provider實現
異步更新UI(FutureBuilder/StreamBuilder)
應用主題切換(Theme/ThemeData(內部經過InheritedWidget實現))
單個界面主題切換
全局界面主題切換
與原生互調和相互集成(MethodChannel.invokeMethod)
Flutter調用Android Native方法
Flutter界面跳轉至Android Native界面
WebView Flutter(webview_flutter)
開發者通用設置(MaterialApp)
是否顯示界面佈局網格(debugShowMaterialGrid)
是否打開性能監控,覆蓋在屏幕最上面(showPerformanceOverlay)
是否打開柵格緩存圖像的檢查板(checkerboardRasterCacheImages)
是否打開顯示到屏幕外位圖的圖層的檢查面板(checkerboardOffscreenLayers)
是否打開覆蓋圖,顯示框架報告的可訪問性信息,顯示邊框(showSemanticsDebugger)
是否顯示右上角的Debug標籤(debugShowCheckedModeBanner)
切換操做系統平臺(Android/iOS)
切換爲Android應用: debugDefaultTargetPlatformOverride = TargetPlatform.android
切換爲iOS應用: debugDefaultTargetPlatformOverride = TargetPlatform.iOS
動畫
自定義控件
國際化
正片(Action)
內含大量gif圖,loading可能會比較耗時,依自身網速而定
整套效果的App下載連接
for Android
OS平臺應用包
QRCode
Android APK包下載(內測密碼:123456)
Github項目地址
android
相關文章
1.
從頭至尾說一遍Java垃圾分類處理
2.
帶你從頭至尾捋一遍MySQL索引結構(2)
3.
C++ 虛函數相關,從頭至尾捋一遍
4.
從頭至尾談一下HTTPS
5.
在一個maven項目中從頭至尾grpc的使用
6.
我們從頭至尾說一次 Java 垃圾回收
7.
Java基礎 - 從頭至尾說一次 Java 垃圾回收(轉)
8.
從頭至尾說一次 Java 垃圾回收
9.
我們從頭至尾再說一次GC垃圾回收
10.
MySQL索引原理,一篇從頭至尾講清楚
更多相關文章...
•
一對一關聯查詢
-
MyBatis教程
•
Hibernate的一級緩存
-
Hibernate教程
•
RxJava操作符(一)Creating Observables
•
C# 中 foreach 遍歷的用法
相關標籤/搜索
從頭至尾
一遍
一切
一頭
頭一
頭尾
從尾
讀一遍
一一一
Spring教程
Docker教程
Docker命令大全
0
分享到微博
分享到微信
分享到QQ
每日一句
每一个你不满意的现在,都有一个你没有努力的曾经。
最新文章
1.
排序-堆排序(heapSort)
2.
堆排序(heapSort)
3.
堆排序(HEAPSORT)
4.
SafetyNet簡要梳理
5.
中年轉行,擁抱互聯網(上)
6.
SourceInsight4.0鼠標單擊變量 整個文件一樣的關鍵字高亮
7.
遊戲建模和室內設計那個未來更有前景?
8.
cloudlet_使用Search Cloudlet爲您的搜索添加種類
9.
藍海創意雲丨這3條小建議讓編劇大大提高工作效率!
10.
flash動畫製作修改教程及超實用的小技巧分享,碩思閃客精靈
本站公眾號
歡迎關注本站公眾號,獲取更多信息
相關文章
1.
從頭至尾說一遍Java垃圾分類處理
2.
帶你從頭至尾捋一遍MySQL索引結構(2)
3.
C++ 虛函數相關,從頭至尾捋一遍
4.
從頭至尾談一下HTTPS
5.
在一個maven項目中從頭至尾grpc的使用
6.
我們從頭至尾說一次 Java 垃圾回收
7.
Java基礎 - 從頭至尾說一次 Java 垃圾回收(轉)
8.
從頭至尾說一次 Java 垃圾回收
9.
我們從頭至尾再說一次GC垃圾回收
10.
MySQL索引原理,一篇從頭至尾講清楚
>>更多相關文章<<