Flutter TextButton 填充

Sen*_*dru 10 dart flutter flutter-2

随着 Flutter 2.0 的发布,FlatButton已被替换为TextButton.

因此,填充属性不再直接可用,而是作为ButtonStyle属性可用。

我的问题是,由于它不再可用,我该如何设置它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)},
   ),
Run Code Online (Sandbox Code Playgroud)

小智 14

这是我的 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")},
    ),  
),
Run Code Online (Sandbox Code Playgroud)

请参阅我使用 TextButton Widget 的 style 属性来插入填充和背景,并且我使用了 MaterialStateProperty.all


Mar*_* Dz 8

你可以这样做,例如:

TextButton(
              onPressed: () {},
              child: Text('Hello World'),
              style: TextButton.styleFrom(
                padding: EdgeInsets.fromLTRB(10, 10, 10, 10),
                primary: Colors.teal,
              ),
            ),
Run Code Online (Sandbox Code Playgroud)

TextButton.styleFrom() 参考文档: https ://api.flutter.dev/flutter/material/TextButton-class.html

使用新按钮的示例和玩法: https ://www.woolha.com/tutorials/flutter-using-textbutton-widget-examples