上篇文章講解了兩種widget,這篇文章主要講解一下常用的基礎控制項的使用方法。
主要包含image、icon、rawimage、assetbundle。
以下以image的講解為例。
object -> diagnosticable -> diagnosticabletree -> widget -> statefulwidget -> image
a widget that displays an image.乙個顯示的widget
image.asset(name);
image.file(file);
image.memory(bytes);
image.network(src);
class imagewidget extends statelesswidget
}
文字widget包括text、richtext。文字樣式有defaulttextstyle。
以下以text的講解為例。
object -> diagnosticable -> diagnosticabletree -> widget -> statelesswidget -> text
a run of text with a single style.下面給出乙個最簡單的text實現:單一樣式/格式的文字
class textwidget extends statelesswidget
}
以上使用的是text的預設樣式,實際應用場景中,我們大多需要自定義textstyle,自定義文字樣式,實現如下:
class textwidget extends statelesswidget
}
flutter中的按鈕包括flatbutton、raisedbutton、floatingactionbutton、iconbutton、popupmenubutton以及buttonbar等。
以下以flatbutton和raisedbutton的講解為例。
object -> diagnosticable -> diagnosticabletree -> widget -> statelesswidget -> materialbutton -> flatbutton
a material design 「flat button」.乙個扁平的material按鈕
class flatbuttonwidget extends statelesswidget
}
object -> diagnosticable -> diagnosticabletree -> widget -> statelesswidget -> materialbutton -> raisedbutton
a material design 「raised button」.material design中的button, 乙個凸起的材質矩形按鈕
class raisedbuttonwidget extends statelesswidget
}
常見的輸入框和選擇框有textfield、checkbox、radio、switch、slider、date & time pickers。
以下以textfield的講解為例。
object -> diagnosticable -> diagnosticabletree -> widget -> statefulwidget -> textfield
a material design text field.textfield的實現需要設定乙個 controller,用於獲取使用者輸入的文字。乙個material design風格的文字輸入框
class textfieldwidget extends statefulwidget
}class _textfieldstate extends state'),)],
);} @override
void dispose()
}
包括******dialog、alertdialog、bottomsheet、expansionpanel、snackbar。
以下以alertdialog的講解為例。
object -> diagnosticable -> diagnosticabletree -> widget -> statelesswidget -> alertdialog
a material design alert dialog.乙個會中斷使用者操作的對話方塊,需要使用者確認
class _textfieldstate extends state);}
)],
);} @override
void dispose()
}
Flutter基礎控制項 Row,Column
tocrow 行,以水平方式排列其內部children widget。若需要使其內部某個children widget填充滿剩餘空間,可使用expanded包裹該元件。void main new statelesswidget 無狀態widget class extends statelesswid...
Flutter 入門筆記 三
例項 import package flutter material.dart void main class extends statelesswidget color colors.redaccent,child newtext red button expanded 靈活布局 child ne...
Flutter控制項 Container
container 乙個方便的 widget,它組合了常見的繪畫 定位和大小的 widget,在flutter中非常常見。顏色,邊框,填充形狀,陰影,漸變色,背景。container 首先會使用 padding 來圍繞在 child 周圍 也包括 decoration 中存在的邊框 新增額外的約束限...