前言
Flutter 作為Google出品的一個(gè)新興的跨平臺(tái)移動(dòng)客戶端UI開(kāi)發(fā)框架淑掌,正在被越來(lái)越多的開(kāi)發(fā)者和組織使用爱榕,包括阿里的咸魚茫因、騰訊的微信等痰娱。
目錄
我將詳細(xì)講解組件(widget)所有知識(shí)口芍,目錄如下:
1箍铲、定義
Flutter里UI控件的統(tǒng)稱。
通過(guò)組合不同的Widget鬓椭,可以實(shí)現(xiàn)用戶界面搭建 & 交互事件颠猴。
2、類型
分為兩類:有狀態(tài) & 無(wú)狀態(tài)小染,具體如下:
3翘瓮、生命周期
生命周期從StatefulWidget.createState()
開(kāi)始,具體如下:
4裤翩、具體使用
主要是分為兩種類型的使用:
- 無(wú)狀態(tài)組件:
StatelessWidget
- 有狀態(tài)組件:
StatefulWidget
4.1 StatelessWidget
// 1. 繼承StatelessWidget
class MyWidget extends StatelessWidget {
// 2. 復(fù)寫build方法
@override
Widget build(BuildContext context) {
// 3. 返回你需要的Widget視圖
return _buildMyWidget(context);
}
}
4.2 StatefulWidget
// 1. 繼承StatefulWidget
class MyWidget extends StatefulWidget {
// 2. 重寫createState()资盅,返回一個(gè)State狀態(tài)
@override
State<StatefulWidget> createState() {
return new _MyWidgetState();
}
}
// 3. 實(shí)現(xiàn)State(繼承了State,包含了視圖和交互邏輯)
class _MyWidgetState extends State<MyWidget>{
// 4. 復(fù)寫build方法,返回你需要的Widget視圖
@override
Widget build(BuildContext context) {
return _buildMyWidget(context);
}
}
5岛都、常用組件
在flutter中律姨,封裝了許多常用的Widget
。下面將通過(guò)講解這些Widget
來(lái)演示StatelessWidget
和 StatefulWidget
的具體使用臼疫,主要包括: