【发布时间】:2021-01-07 04:17:13
【问题描述】:
鉴于以下布局,我试图使FlatButton(右侧按钮)与行高匹配。使用Flexible 或Expandable 小部件似乎不能解决问题。能够用文本 Column 填充剩余空间是一项要求。
这是转换为图像的代码。
class UITest extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(),
body: Row(
children: [
Padding(
padding: const EdgeInsets.only(
left: 12.0, bottom: 12.0, top: 12.0, right: 6.0),
child: Column(
mainAxisSize: MainAxisSize.min,
children: [Text('12'), Text('MAY'), Text('12')],
),
),
Text('–'),
Padding(
padding: const EdgeInsets.only(
left: 6.0, bottom: 12.0, top: 12.0, right: 12.0),
child: Column(
mainAxisSize: MainAxisSize.min,
children: [Text('12'), Text('MAY'), Text('12')],
),
),
Expanded(
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
Text(
'Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet'),
Text('Lorem')
],
),
),
SizedBox(
width: 10.0,
),
ButtonTheme(
buttonColor: Colors.red,
minWidth: 0.0,
padding: EdgeInsets.zero,
child: FlatButton(
onPressed: () {},
child: Image(
image: AssetImage('assets/icons/location.png'),
width: 30.0,
height: 30.0,
),
),
),
],
),
);
}
}
知道如何实现这一目标吗?
【问题讨论】:
-
你必须在这里使用 FittedBox:youtube.com/watch?v=T4Uehk3_wlY&vl=en
-
用
SizedBox(height: double.infinity, child: ...)包裹你的FlatButton -
@Uni FittedBox 在此示例中不起作用,原因不明:(。如果我尝试将其包裹在 ButtonTheme 或 FlatButton 周围。
-
@pskink 添加 SizedBox 使我的布局扩展到屏幕高度,我希望按钮与行的高度相同。