這篇文章開(kāi)始譬挚,我將介紹在MaterialButton锅铅,它包含了三個(gè)子類(lèi):RaisedButton、OutlineButton减宣、FlatButton盐须。
MaterialButton屬性學(xué)習(xí)
首先看看MaterialButton有哪些屬性。
- onPressed:被@required標(biāo)記漆腌,必須贼邓。表示按下的點(diǎn)擊事件,如果為空闷尿,則按鈕表示禁用塑径。
- child:設(shè)置一個(gè)子widget,一般是它給按鈕設(shè)置一個(gè)文本內(nèi)容填具。
- textTheme:按鈕上文本的主題统舀。
-
textColor :按鈕文字顏色,該屬性要求onPressed不能為null劳景。
-disabledTextColor:未選中時(shí)誉简,文本顏色。
-color:填充的顏色枢泰,可理解為背景顏色描融,該屬性要求onPressed不能為null。
child: MaterialButton(
onPressed: null,
child: Text("確定"),
color: Colors.amber,
textColor: Colors.red,
disabledTextColor: Colors.lightBlue,
),
-disabledColor:禁用按鈕時(shí)衡蚂,按鈕的背景顏色窿克。和color屬性剛好相反。
-colorBrightness:按鈕的主題亮度毛甲,灰暗年叮、明亮。
-elevation:控制Z軸的高度玻募,用于實(shí)現(xiàn)按鈕周?chē)幱啊?br>
-highlightElevation:高亮是Z軸的高度只损,需要按鈕可用,該屬性要求onPressed不能為null七咧。
-disabledElevation:按鈕不可用時(shí)跃惫,Z軸的高度,用于實(shí)現(xiàn)按鈕周?chē)幱啊?br>
-padding:按鈕內(nèi)部子Widget填充方式
-shape:定義按鈕的形狀
-clipBehavior:當(dāng)內(nèi)部widget溢出邊界時(shí)艾栋,剪切方式爆存。
-materialTapTargetSize:配置tap目標(biāo)的最小大小
-animationDuration:定義動(dòng)畫(huà)的執(zhí)行時(shí)間。
-minWidth:最小寬度
-height:高度
body: Column(
children: <Widget>[
RaisedButton(
child: Text(
"RaisedButton",
style: TextStyle(fontSize: 20.0),
),
textColor: Colors.white,
color: Colors.blue[900],
onPressed: logPrint,
//按下時(shí)蝗砾,背景高亮顏色先较。即onPressed不為null
highlightColor: Colors.blue,
//不可點(diǎn)擊時(shí)携冤,背景顏色。即onPressed為null
disabledColor: Colors.amberAccent[100],
//觸摸按鈕時(shí)闲勺,類(lèi)似水波紋擴(kuò)散的顏色
splashColor: Colors.deepPurpleAccent,
),
FlatButton(
child: Text(
"FlatButton",
),
//文本顏色
textColor: Colors.amber,
onPressed: logPrint,
//按下時(shí)曾棕,背景高亮顏色。即onPressed不為null
highlightColor: Colors.blue,
//不可點(diǎn)擊時(shí)菜循,背景顏色翘地。即onPressed為null
disabledColor: Colors.amberAccent[100],
//觸摸按鈕時(shí),類(lèi)似水波紋擴(kuò)散的顏色
splashColor: Colors.deepPurpleAccent,
),
OutlineButton(
child: Text(
"OutlineButton",
),
//文本顏色
textColor: Colors.amber,
onPressed: logPrint,
//不可點(diǎn)擊時(shí)债朵,邊框顏色子眶。即onPressed為null
disabledBorderColor: Colors.purpleAccent,
//可點(diǎn)擊時(shí),邊框顏色序芦。即onPressed為null
highlightedBorderColor: Colors.teal,
),
],
),
void logPrint() {
print("hhhh");
}