With the Flutter 2.0 release, the FlatButton
has been replaced with TextButton
.
Hence, the padding property is not longer available directly, but as a ButtonStyle
property.
My problem is, how can I set it since it's no longer available as EdgeInsets
?
TextButton(
style: new ButtonStyle(
padding: ???,
),
//padding: const EdgeInsets.all(0), //NOT AVAILABLE
child: Text("Support", style: Theme.of(context).textTheme.headline2),
onPressed: () => {Navigator.pushNamed(context, SupportScreen().routeName)},
),
Here is my code for TextButton
Container(
child: TextButton(
style: ButtonStyle(
backgroundColor:
MaterialStateProperty.all<Color>(Colors.green),
padding: MaterialStateProperty.all<EdgeInsets>(
EdgeInsets.all(10)),
),
child: Text(
"Login",
style: TextStyle(
height: 1.0,
fontSize: 30,
color: Colors.white,
),
),
onPressed: () => {print("login")},
),
),
see I used the style property for the TextButton Widget to insert the padding and the background and for both I used MaterialStateProperty.all
You can do it like this for example:
TextButton(
onPressed: () {},
child: Text('Hello World'),
style: TextButton.styleFrom(
padding: EdgeInsets.fromLTRB(10, 10, 10, 10),
primary: Colors.teal,
),
),
TextButton.styleFrom() ref doc: https://api.flutter.dev/flutter/material/TextButton-class.html
example and playarounds with new button: https://www.woolha.com/tutorials/flutter-using-textbutton-widget-examples
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With