Android 如何对齐按钮内部的文本,该按钮位于中心小部件| flatter内?

Android 如何对齐按钮内部的文本,该按钮位于中心小部件| flatter内?,android,flutter,dart,flutter-layout,Android,Flutter,Dart,Flutter Layout,我的按钮必须在中间,但必须对齐在同一条线上, “侧边中的文字”按钮也应向左对齐。 为此,我使用textalign left,但在我的代码中不起作用,我不知道为什么 因此,任何人都可以修改我的代码,使按钮内的文本左对齐,而不影响我的按钮位置 多谢各位 class Something extends StatelessWidget { @override Widget build(BuildContext context) { return Scaffold( appBa

我的按钮必须在中间,但必须对齐在同一条线上, “侧边中的文字”按钮也应向左对齐。 为此,我使用textalign left,但在我的代码中不起作用,我不知道为什么

因此,任何人都可以修改我的代码,使按钮内的文本左对齐,而不影响我的按钮位置

多谢各位

class Something extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('Solve Before Downvote !'),
      ),
      body: Container(
        color: Color(0xff263238),
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: [
            SingleChildScrollView(
              child: Center(
                child: Column(
                  crossAxisAlignment: CrossAxisAlignment.start,
                  children: [
                    MaterialButton(
                      shape: RoundedRectangleBorder(
                          borderRadius: BorderRadius.circular(10.0)),
                      padding: EdgeInsets.only(left: 5),
                      color: Colors.green,
                      onPressed: () {},
                      child: Text('SomeThing', textAlign: TextAlign.left),
                    ),
                    MaterialButton(
                      shape: RoundedRectangleBorder(
                          borderRadius: BorderRadius.circular(10.0)),
                      color: Colors.green,
                      onPressed: () { },
                      child: Text('Nothing', textAlign: TextAlign.left),
                    ),
                    MaterialButton(
                      shape: RoundedRectangleBorder(
                          borderRadius: BorderRadius.circular(10.0)),
                      color: Colors.green,
                      onPressed: () {},
                      child: Text('Can You do something ?',
                          textAlign: TextAlign.left),
                    ),
                    MaterialButton(
                      shape: RoundedRectangleBorder(
                          borderRadius: BorderRadius.circular(10.0)),
                      color: Colors.green,
                      onPressed: () {},
                      child: Text('Nothing to do !', textAlign: TextAlign.left),
                    ),
                  ],
                ),
              ),
            )
          ],
        ),
      ),
    );
  }
}


能否添加
Align()
并设置
对齐:对齐。在小部件子文本之前,请检查以下代码。我已经用代码注释出了解决方案

class Something extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
   return Scaffold(
  appBar: AppBar(
    title: const Text('Solve Before Downvote !'),
  ),
  body: Container(
    width: MediaQuery.of(context).size.width,
    color: Color(0xff263238),
    child: Column(
      mainAxisAlignment: MainAxisAlignment.center,
      crossAxisAlignment: CrossAxisAlignment.center,
      children: [
        SingleChildScrollView(
          child: Center(
            child: Column(
              crossAxisAlignment: CrossAxisAlignment.start,
              children: [
                Padding(
                  padding: const EdgeInsets.all(2.0),
                  child: Material(
                    color: Colors.green,
                    borderRadius: BorderRadius.circular(10.0),
                    child: InkWell(
                      onTap: () {
                        setState(() {
                          abc = true;
                        });
                      },
                      child: Padding(
                        padding: const EdgeInsets.fromLTRB(0, 12, 15, 12),
                        child: Text('SomeThing', textAlign: TextAlign.left),
                      ),
                    ),
                  ),
                ),
                Padding(
                  padding: const EdgeInsets.all(2.0),
                  child: Material(
                    color: Colors.green,
                    borderRadius: BorderRadius.circular(10.0),
                    child: InkWell(
                      onTap: () {
                        setState(() {
                          abc = true;
                        });
                      },
                      child: Padding(
                        padding: const EdgeInsets.fromLTRB(0, 12, 15, 12),
                        child: Text('Nothing', textAlign: TextAlign.left),
                      ),
                    ),
                  ),
                ),
                Padding(
                  padding: const EdgeInsets.all(2.0),
                  child: Material(
                    color: Colors.green,
                    borderRadius: BorderRadius.circular(10.0),
                    child: InkWell(
                      onTap: () {
                        setState(() {
                          abc = true;
                        });
                      },
                      child: Padding(
                        padding: const EdgeInsets.fromLTRB(0, 12, 15, 12),
                        child: Text('Can You do something ?',
                            textAlign: TextAlign.left),
                      ),
                    ),
                  ),
                ),
                Padding(
                  padding: const EdgeInsets.all(2.0),
                  child: Material(
                    color: Colors.green,
                    borderRadius: BorderRadius.circular(10.0),
                    child: InkWell(
                      onTap: () {
                        setState(() {
                          abc = true;
                        });
                      },
                      child: Padding(
                        padding: const EdgeInsets.fromLTRB(0, 12, 15, 12),
                        child: Text('Nothing to do !',
                            textAlign: TextAlign.left),
                      ),
                    ),
                  ),
                ),
              ],
            ),
          ),
        )
      ],
    ),
  ),
);
  }
}

不确定您要的是什么,但是
MaterialButton
有一个默认的
padding
,可以使用
padding:EdgeInsets删除。在
MaterialButton
中为零。我询问了关于Material按钮内的文本,应该左对齐。为此,我使用textAlign:textAlign.left但不工作,您可以在屏幕截图中看到。这是因为
MaterialButton
具有默认的
padding
,您可以将
padding
设置为
EdgeInsets.zero
。是否需要中心的所有按钮垂直和水平对齐?->图1或=>图2您指的是哪一个?t将增加按钮size@DanarPutra,甚至是正确的,它增加了我的按钮大小,如(宽度匹配父母哈哈),谢谢你的努力。这正是我真正需要的,但需要另一个帮助,如何使手势检测器显示波纹时clicked@PMahto,对不起,伙计,你需要用墨水瓶。它将工作,经过测试。我刚刚更新了代码,请检查一下。如果它有效,请投票给我。它有效,再次感谢,但很抱歉,没有足够的声誉,我认为这是一个无状态的小部件,所以设置状态显示错误?使它状态完整,你在无状态下工作,我做了状态完整