dart - 全宽按钮,如何对齐文本

试图弄清楚我是否可以在全宽按钮中对齐文本,即具有 width: double.infinity

的按钮

例如:

ButtonTheme(
  minWidth: double.infinity,
  child: FlatButton(
    onPressed: () {},
    child: Text('Sign Out', textAlign: TextAlign.left),
  ),
)

产生一个居中的文本按钮并且不能改变对齐方式。

我尝试了一些方法,但无法弄清楚,除非我尝试创建自定义按钮。

我正在尝试获得一个带有 text:left 的全宽按钮,以便用户可以单击行中的任意位置,并且仍然可以获得 Material 点击效果。

最佳答案

我发现RawMaterialButton 的build-Method 是always centered :

child: Center(
  widthFactor: 1.0,
  heightFactor: 1.0,
  child: widget.child,
),

要让文本与开始/左对齐,您可以给它一个无限宽度,这将使它与它的父级中心小部件一样宽。

child: FlatButton(
  child: SizedBox(
    width: double.infinity,
    child: Text(
      'Sign out',
      textAlign: TextAlign.left,
    ),
  ),
  onPressed: () {},
);

https://stackoverflow.com/questions/52156163/

相关文章:

flutter - 将容器缩小到较小的 child 而不是扩大到填充 parent

flutter - 如何拉伸(stretch)图标以填充父级?

flutter - 如何在 Flutter 中将一个小部件放在另一个小部件之上?

dart - flutter 测试 : Waiting for a certain duration

dart - 长文本 flutter 中的换行符

android - 将自定义 boxshadow 添加到 Flutter 卡

loops - 从 List.map() 获取迭代索引

dart - Flutter - 是否可以在不使用 FutureBuilder 的情况下从 Futu

flutter - 如何像在 Hamilton Flutter 应用程序中一样在 Flutter 中

android - 什么时候在 Flutter 中使用 setState?