为什么 ButtonStyle 的属性在像素方面padding
不等同于 Container 的属性?padding
我希望将 TextButton 和 Container 文本放在一起时对齐:
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
TextButton(
style: ButtonStyle(
padding: MaterialStateProperty.all(EdgeInsets.all(24)),
),
onPressed: () => print('pressed!'),
child: Text('My Button'),
),
Container(
padding: EdgeInsets.all(24),
child: Text('Some other text'),
)
],
);
理论上,TextButton 和 Container 都采用了相同的填充量,但文本并没有对齐。请注意,Container 文本中的“S”与 TextButton 中的“M”不对齐,尽管它们具有相同的填充量:
请注意,列crossAxisAlignment
已设置为“开始”,以便两个小部件都应与最左侧对齐。
我是否遗漏了有关 ButtonStylepadding
属性的某些内容?
更新
我可以确认 iOS 和 Android 没有相同的问题。此问题似乎与 Web 和桌面 (macOS/Linux) 无关。我还没有测试过 Windows。