我试图添加一些填充到我的小部件,但我遇到了这个问题:
TextButton( style: ButtonStyle( padding: EdgeInsets.symmetric(vertical: 20.0, horizontal: 60.0), ), onPressed: () {}, child: const Text('Text'), ),
cvxl0en21#
使用MaterialStateProperty可以传递一个值,该值取决于材质小部件(通常是MaterialState)的状态。例如,当按钮被按下时需要改变其颜色或大小时,这可以证明是有用的。在您的情况下,使用MaterialStateProperty.all如下应该修复它。
MaterialStateProperty.all
TextButton( style: ButtonStyle( padding: MaterialStateProperty.all( EdgeInsets.symmetric(vertical: 20.0, horizontal: 60.0), ), ), onPressed: () {}, child: const Text('Text'), ),
这款similar question同样值得一提。编辑:来自Flutter通道的relevant video
piwo6bdm2#
您可以创建最终的ButtonStyle并在按钮中使用,如:
final ButtonStyle raisedButtonStyle = ElevatedButton.styleFrom( padding: EdgeInsets.symmetric(vertical: 20.0, horizontal: 60.0), ); return Body( child: Column( children: <Widget>[ TextButton( style: raisedButtonStyle, onPressed: (){}, child: const Text("TEXT"), ) ], ),);
https://docs.flutter.dev/release/breaking-changes/buttons
2条答案
按热度按时间cvxl0en21#
使用MaterialStateProperty可以传递一个值,该值取决于材质小部件(通常是MaterialState)的状态。
例如,当按钮被按下时需要改变其颜色或大小时,这可以证明是有用的。
在您的情况下,使用
MaterialStateProperty.all
如下应该修复它。这款similar question同样值得一提。
编辑:来自Flutter通道的relevant video
piwo6bdm2#
您可以创建最终的ButtonStyle并在按钮中使用,如:
https://docs.flutter.dev/release/breaking-changes/buttons