FlatButton is deprecated and shouldn't be used. Used TextButton instead.
On my previous FlatButton widget, i was able to changed the splash color when on pressed. But now I'm using TextButton widget, how can i changed its color the efficient way on the MaterialApp ThemeData
or directly on the TextButton
widget.
Currenly this is my TextButton
TextButton(
style: TextButton.styleFrom(
primary: Colors.red,
textStyle: TextStyle(
color: Colors.black45,
fontFamily: "Courier Prime",
),
backgroundColor: Colors.transparent,
),
onPressed: () {},
child: Text(
"Student",
style: TextStyle(fontWeight: FontWeight.bold),
),
),
overlayColor is used to indicate that the button is focused, hovered, or pressed.
But I cant find this overlayColor
First keep in mind that the primary property on a TextButton sets the colour of its text and icon. It does not change the ripple color. Secondly in Textbutton there is no direct property to change splash color. So if you want to change splash color to transparent you can do it like this.
TextButton(
style: ButtonStyle(
overlayColor: MaterialStateProperty.all(Colors.________),
),
)
TextButton(
style: ButtonStyle(
overlayColor: MaterialStateColor.resolveWith((states) => Colors.red),
),
child: ...,
)
reference to Flutter TextButton splashColor property
You can change Splash color like this:
Theme(
data: ThemeData(
splashColor: Colors.red,
highlightColor: Colors.black.withOpacity(.5),
),
child: ListTile(
title: Text(
"New theme splash",
textAlign: TextAlign.center,
),
onTap: () {}),
),
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.