【发布时间】:2021-03-23 22:48:50
【问题描述】:
我在 Flutter 中使用 Alignments 时遇到了一些困难。我正在尝试创建一张一次性卡片。
我不能将图像居中并将图标放在右上角。
小部件说明
Card 由Columns 组成,每个Column 都有一个Row
x 图标是第一个 Row 的第一个孩子
我用Align Widget 包裹了图标,但它不会向右移动:
Row(children: [
Align(
alignment: Alignment.topRight,
child: Icon(Icons.cancel),)
]
)
对于猫头鹰图像,我将其包裹在 Container 中,并使用 alignment 属性放置在 Center 中:
Row(children: [
Container(
width: 100,
height: 150,
alignment: Alignment.center,
child: Image(
alignment: Alignment.center,
image: NetworkImage('https://flutter.github.io/assets-for-api-docs/assets/widgets/owl.jpg'),
)
),
]),
似乎无论我在布局上尝试什么,它都不会移动 Card 内的对象
这是Card 小部件:
class CustomCard extends StatelessWidget {
@override
Widget build(BuildContext context) {
// TODO: implement build
return Card(
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
Row(children: [
Align(
alignment: Alignment.topRight,
child: Icon(Icons.cancel) ,
)
]
),
SizedBox(
height: 8,
),
Row(children: [
Container(
width: 100,
height: 150,
alignment: Alignment.center,
child: Image(
alignment: Alignment.center,
image: NetworkImage(
'https://flutter.github.io/assets-for-api-docs/assets/widgets/owl.jpg'),
))
]),
],
));
}
}
无论我尝试什么,我都无法正确放置它们,我是否完全错过了对齐小部件和对齐属性的概念?
【问题讨论】:
标签: flutter dart flutter-layout