我是Flutter的新手。我想举一个简单的例子。我想在按住时更改平面按钮的颜色。本质上我做到了,但是我不确定这是正确的方法。有没有更简单的方法?例如,可能是如下所示的属性;
higlightTextColor: Colors.white
简单形式的代码;
void _showAlertDialog(BuildContext context, Student item) {
showDialog(
...
builder: (context) {
bool _onHighlight = false;
return StatefulBuilder(
builder: (context, setState) {
return AlertDialog(
...,
content: Text(
item._description + _onHighlight.toString(),
),
actions: <Widget>[
FlatButton(
child: Text(
'Okay',
),
onPressed: () {},
color: Colors.transparent,
textColor: _onHighlight ? Colors.white : Colors.amber,
splashColor: Colors.amber,
shape: RoundedRectangleBorder(
side: BorderSide(
color: Colors.amber,
width: 1,
style: BorderStyle.solid)),
onHighlightChanged: (value) {
setState(() {
_onHighlight = value;
});
},
// hoverColor: Colors.amber,
),
],
);
},
);
},
);
}