如何使按钮的宽度与父元素匹配?
如何使按钮的宽度与父元素匹配?
我想知道如何设置一个宽度来匹配父布局的宽度
new Container( width: 200.0, padding: const EdgeInsets.only(top: 16.0), child: new RaisedButton( child: new Text( "Submit", style: new TextStyle( color: Colors.white, ) ), colorBrightness: Brightness.dark, onPressed: () { _loginAttempt(context); }, color: Colors.blue, ), ),
我知道一点关于 Expanded
小部件,但是 Expanded
会扩展视图到两个方向,我不知道该怎么做。
admin 更改状态以发布 2023年5月22日
更新:
使用 Flutter 2.0 之后,RaisedButton
被弃用并替换为 ElevatedButton
,可以像这样使用 minimumSize
:
ElevatedButton( style: ElevatedButton.styleFrom( minimumSize: Size.fromHeight(40), // fromHeight use double.infinity as width and 40 is the height ), onPressed: () {}, child: Text('Text Of Button'), )
对于 Flutter 2.0 以前的版本,正确的解决方案是使用 SizedBox.expand
小部件,它强制其 child
与其父元素的大小匹配。
SizedBox.expand( child: RaisedButton(...), )
还有许多替代方案,可以进行更多或更少的自定义:
SizedBox( width: double.infinity, // height: double.infinity, child: RaisedButton(...), )
或者使用 ConstrainedBox
ConstrainedBox( constraints: const BoxConstraints(minWidth: double.infinity), child: RaisedButton(...), )