使用(yòng)Flutter的一套的視(shì)覺、結構、平台、和(hé)交互式的widgets,快(kuài)速創建漂亮(liàng)的APP.
除了(le)按類别浏覽widget外(wài),您還可以在Flutter widget 索引浏覽Flutter中的所有widgets。
基礎 Widgets
Container:一個擁有繪制、定位、調整大(dà)小(xiǎo)的 widget
Row:在水(shuǐ)平方向上(shàng)排列子widget的列表
Column:在垂直方向上(shàng)排列子widget的列表
Image:一個顯示圖片的widget
Text:單一格式的文(wén)本
Icon:A Material Design icon.
RaisedButton:Material Design中的button, 一個凸起的材質矩形按鈕
Scaffold:Material Design布局結構的基本實現(xiàn)。此類提供了(le)用(yòng)于顯示drawer、snackbar和(hé)底部sheet的API
Appbar:一個Material Design應用(yòng)程序欄,由工(gōng)具欄和(hé)其他(tā)可能(néng)的widget(如TabBar和(hé)FlexibleSpaceBar)組成
FlutterLogo:Flutter logo, 以widget形式. 這(zhè)個widget遵從(cóng)IconTheme。
Placeholder:一個繪制了(le)一個盒子的的widget,代表日後有widget将會(huì)被添加到(dào)該盒子中
Material Components Widgets
App結構和(hé)導航
Scaffold:Material Design布局結構的基本實現(xiàn)。此類提供了(le)用(yòng)于顯示drawer、snackbar和(hé)底部sheet的API。
Appbar:一個Material Design應用(yòng)程序欄,由工(gōng)具欄和(hé)其他(tā)可能(néng)的widget(如TabBar和(hé)FlexibleSpaceBar)組成。
ButtomNavigationBar:底部導航條,可以很(hěn)容易地在tap之間切換和(hé)浏覽頂級視(shì)圖。
TabBar:一個顯示水(shuǐ)平選項卡的Material Design widget。
TabBarView:顯示與當前選中的選項卡相對(duì)應的頁面視(shì)圖。通常和(hé)TabBar一起使用(yòng)。
MaterialApp:一個方便的widget,它封裝了(le)應用(yòng)程序實現(xiàn)Material Design所需要的一些(xiē)widget。
WidgetsApp:一個方便的類,它封裝了(le)應用(yòng)程序通常需要的一些(xiē)widget。
Drawer:從(cóng)Scaffold邊緣水(shuǐ)平滑動以顯示應用(yòng)程序中導航鏈接的Material Design面闆
按鈕
RaisedButton:Material Design中的button, 一個凸起的材質矩形按鈕
FloatingActionButton:一個圓形圖标按鈕,它懸停在内容之上(shàng),以展示應用(yòng)程序中的主要動作(zuò)。FloatingActionButton通常用(yòng)于Scaffold.floatingActionButton字段。
FlatButton:一個扁平的Material按鈕
IconButton:一個Material圖标按鈕,點擊時(shí)會(huì)有水(shuǐ)波動畫(huà)
PopupMenuButton:當菜單隐藏式,點擊或調用(yòng)onSelected時(shí)顯示一個彈出式菜單列表
ButtonBar:水(shuǐ)平排列的按鈕組
輸入框和(hé)選擇框
TextField:文(wén)本輸入框
Checkbox:複選框,允許用(yòng)戶從(cóng)一組中選擇多個選項
Radio:單選框,允許用(yòng)戶從(cóng)一組中選擇一個選項。
Switch:On/off 用(yòng)于切換一個單一狀态
Slider:滑塊,允許用(yòng)戶通過滑動滑塊來(lái)從(cóng)一系列值中選擇。
Date & Time Pickers:日期&時(shí)間選擇器
對(duì)話(huà)框、Alert、Panel
SimpleDialog:簡單對(duì)話(huà)框可以顯示附加的提示或操作(zuò)
AlertDialog:一個會(huì)中斷用(yòng)戶操作(zuò)的對(duì)話(huà)款,需要用(yòng)戶确認
BottomSheet:一個從(cóng)屏幕底部滑起的列表(以顯示更多的内容)。你(nǐ)可以調用(yòng)showBottomSheet()或showModalBottomSheet彈出
ExpansionPanel:Expansion panels contain creation flows and allow lightweight editing of an element. The ExpansionPanel widget implements this component.
SnackBar:具有可選操作(zuò)的輕量級消息提示,在屏幕的底部顯示。
信息展示
Image:一個顯示圖片的widget
Icon:A Material Design icon.
Chip:标簽,一個Material widget。 它可以将一個複雜(zá)内容實體展現(xiàn)在一個小(xiǎo)塊中,如聯系人。
Tooltip:一個文(wén)本提示工(gōng)具,幫助解釋一個按鈕或其他(tā)用(yòng)戶界面,當widget長時(shí)間按下(xià)時(shí)(當用(yòng)戶采取其他(tā)适當操作(zuò)時(shí))顯示一個提示标簽。‘
DataTable:數據表顯示原始數據集。它們通常出現(xiàn)在桌面企業産品中。DataTable Widget實現(xiàn)這(zhè)個組件
Card:一個 Material Design 卡片。擁有一個圓角和(hé)陰影
LinearProgressIndicator:一個線性進度條,另外(wài)還有一個圓形進度條CircularProgressIndicator
布局
ListTile:一個固定高(gāo)度的行,通常包含一些(xiē)文(wén)本,以及一個行前或行尾圖标
Stepper:一個Material Design 步驟指示器,顯示一系列步驟的過程
Divider:一個邏輯1像素厚的水(shuǐ)平分割線,兩邊都有填充
Cupertino(iOS風(fēng)格的widget)
CupertinoActivityIndicator:一個iOS風(fēng)格的loading指示器。顯示一個圓形的轉圈菊花(huā)
CupertinoAlertDialog:iOS風(fēng)格的alert dialog
CupertinoButton:iOS風(fēng)格的button
CupertinoDialog:iOS風(fēng)格的對(duì)話(huà)框
CupertinoDialogAction:通常用(yòng)于CupertinoAlertDialog的一個button
CupertinoSlider:從(cóng)一個範圍中選一個值
CupertinoSwitch:iOS風(fēng)格的開(kāi)關. 用(yòng)于單一狀态的開(kāi)/關
CupertinoPageTransition:提供iOS風(fēng)格的頁面過度動畫(huà)
CupertinoFullscreenDialogTransition:一個iOS風(fēng)格的過渡,用(yòng)于調用(yòng)全屏對(duì)話(huà)框
CupertinoNavigationBar:iOS風(fēng)格的導航欄. 通常和(hé)CupertinoPageScaffold一起使用(yòng)
CupertinoTabBar:iOS風(fēng)格的底部選項卡。 通常和(hé)CupertinoTabScaffold一起使用(yòng)
CupertinoPageScaffold:一個iOS風(fēng)格的頁面的基本布局結構。包含内容和(hé)導航欄
CupertinoTabScaffold:标簽式iOS應用(yòng)程序的結構。将選項卡欄放(fàng)在内容選項卡之上(shàng)
CupertinoTabView:支持選項卡間并行導航項卡的根内容。通常與CupertinoTabScaffolde一起使用(yòng)
Layout
擁有單個子元素的布局widget
Container:一個擁有繪制、定位、調整大(dà)小(xiǎo)的 widget
Padding:一個widget, 會(huì)給其子widget添加指定的填充
Center:将其子widget居中顯示在自(zì)身内部的widget
Align:一個widget,它可以将其子widget對(duì)齊,并可以根據子widget的大(dà)小(xiǎo)自(zì)動調整大(dà)小(xiǎo)
FittedBox:按自(zì)己的大(dà)小(xiǎo)調整其子widget的大(dà)小(xiǎo)和(hé)位置
AspectRatio:一個widget,試圖将子widget的大(dà)小(xiǎo)指定爲某個特定的長寬比
ConstrainedBox:對(duì)其子項施加附加約束的widget
Baseline:根據子項的基線對(duì)它們的位置進行定位的widget
FractionallySizedBox:一個widget,它把它的子項放(fàng)在可用(yòng)空(kōng)間的一小(xiǎo)部分。關于布局算(suàn)法的更多細節,見RenderFractionallySizedOverflowBox
IntrinsicHeight:一個widget,它将它的子widget的高(gāo)度調整其本身實際的高(gāo)度
IntrinsicWidth:一個widget,它将它的子widget的寬度調整其本身實際的寬度
LimitedBox:一個當其自(zì)身不受約束時(shí)才限制其大(dà)小(xiǎo)的盒子
Offstage:一個布局widget,可以控制其子widget的顯示和(hé)隐藏
OverflowBox:對(duì)其子項施加不同約束的widget,它可能(néng)允許子項溢出父級
SizedBox:一個特定大(dà)小(xiǎo)的盒子。這(zhè)個widget強制它的孩子有一個特定的寬度和(hé)高(gāo)度。如果寬度或高(gāo)度爲NULL,則此widget将調整自(zì)身大(dà)小(xiǎo)以匹配該維度中的孩子的大(dà)小(xiǎo)
SizedOverflowBox:一個特定大(dà)小(xiǎo)的widget,但(dàn)是會(huì)将它的原始約束傳遞給它的孩子,它可能(néng)會(huì)溢出
Transform:在繪制子widget之前應用(yòng)轉換的widget
CustomSingleChildLayout:一個自(zì)定義的擁有單個子widget的布局widget
擁有多個子元素的布局widget
Row:在水(shuǐ)平方向上(shàng)排列子widget的列表
Column:在垂直方向上(shàng)排列子widget的列表
Stack:可以允許其子widget簡單的堆疊在一起
IndexedStack:從(cóng)一個子widget列表中顯示單個孩子的Stack
Flow:一個實現(xiàn)流式布局算(suàn)法的widget
Table:爲其子widget使用(yòng)表格布局算(suàn)法的widget
Wrap:可以在水(shuǐ)平或垂直方向多行顯示其子widget
ListBody:一個widget,它沿着一個給定的軸,順序排列它的子元素
ListView:可滾動的列表控件。ListView是最常用(yòng)的滾動widget,它在滾動方向上(shàng)一個接一個地顯示它的孩子。在縱軸上(shàng),孩子們被要求填充ListView
CustomMultiChildLayout:使用(yòng)一個委托來(lái)對(duì)多個孩子進行設置大(dà)小(xiǎo)和(hé)定位的小(xiǎo)部件
Layout helpers
LayoutBuilder:構建一個可以依賴父窗口大(dà)小(xiǎo)的widget樹
網站(zhàn)建設開(kāi)發|APP設計(jì)開(kāi)發|小(xiǎo)程序建設開(kāi)發