今天懶一下,就簡單的介紹一下flutter的widget:
根據flutter官網上的Widget catalog分為了以下幾種:(Link)
1.Accessibility
使App易於訪問。
- ExcludeSemantics、MergeSemantics、Semantics
2.Animation and Motion
在App裡使用動畫
- AnimatedAlign、AnimatedBuilder、AnimatedContainer、AnimatedCrossFade、AnimatedDefaultTextStyle、AnimatedListState、AnimatedModalBarrier、AnimatedOpacity、AnimatedPhysicalModel、AnimatedPositioned、AnimatedSize、AnimatedWidget、AnimatedWidgetBaseState
- DecoratedBoxTransition、FadeTransition、PositionedTransition、RotationTransition、ScaleTransition、SizeTransition、SlideTransition
- Hero
3.Assets, Images, and Icons
管理Assets,顯示圖示
-
AssetBundle、Icon、Image、RawImage
4.Async
在App裡使用Async pattern Widget
-
FutureBuilder、StreamBuilder
5.Basics
基本的Widget
- Appbar
- Column
- Container
- ElavatedButton
- FlutterLogo
- Icon
- Image
- Placeholder
- Row
- Scaffold
- Text
6.Cupertino (iOS-style widgets)
根據iOS所設計的widget
7.Input
除了Material Components和Cupertino中的 input widgets之外,還接受用戶輸入
- Autocomplete、Form、FormField、RawKeyboardListener
8.Interaction Models
響應 touch events並將用戶路由到不同的視圖
Touch interactions
- AbsorbPointer
- Dismissible
- DragTarget、Draggable、DraggableScrollableSheet、LongPressDraggable
-
GestureDetector
- IgnorePointer
-
InteractiveViewer
-
Scrollable
Routing
9.Layout
排列其他widget的列、行、網格和許多其他佈局
- Single-child layout widgets
- Multi-child layout widgets
- Sliver widgets
10.Material Components
使用Material風格設計的widget
11.Painting and effects
在不更改其佈局、大小或位置的情況下提供視覺效果
- BackdropFilter、ClipOval、ClipPath、ClipRect、CustomPaint、DecoratedBox、FractionalTranslation、Opacity、RotatedBox、Transform
12.Scrolling
滾動類widget
-
ListView、NestedScrollView、PageView、ReorderableListView、SingleChildScrollView
- NotificationListener
-
RefreshIndicator
- ScrollConfiguration、Scrollable、Scrollbar
13.Styling
管理App的theme,並且管理widget在不同螢幕的大小
14.Text
text顯示和樣式
- DefaultTextStyle、RichText、Text
今天簡單介紹widget的分類,明後天介紹widget種類裡的Basic和Layout