颤振行不向左对齐

时间:2018-11-06 04:29:18

标签: flutter flutter-layout

我在一行的左侧对齐文本时遇到麻烦。

布局如下所示:

enter image description here

但是,我希望用户名(“ Peter Jonathan”)和用户句柄(“ @pj”)与最左侧对齐。关于如何执行此操作的任何建议?

这是我当前拥有的代码:

class ProfilePage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      appBar: AppBar(
        elevation: 0.0,
//        title: Text('Profile'),
      ),
      body: new Container(
        padding: EdgeInsets.fromLTRB(25.0, 0.0, 25.0, 10.0),
        child: new Column(
          children: <Widget>[
            new Row(
              mainAxisAlignment: MainAxisAlignment.spaceEvenly,
              children: <Widget>[
                new Container(
                  width: 100.0,
                  height: 100.0,
                  child: new Center(
                    child: new Text(
                      "PJ",
                      style: new TextStyle(fontSize: 40.0),
                    ),
                  ),
                  decoration: BoxDecoration(
                    shape: BoxShape.circle,
                    border: new Border.all(color: Colors.purple),
                  ),
                ),
                new Column(
                  children: <Widget>[
                    new Row(
                      children: <Widget>[
                        new Padding(
                          padding: EdgeInsets.all(10.0),
                          child: new Column(
                            children: <Widget>[
                              new Text(
                                '100',
                                style: new TextStyle(fontSize: 20.0),
                              ),
                              new Text('Followers'),
                            ],
                          ),
                        ),

                        new Padding(
                          padding: EdgeInsets.all(10.0),
                          child: new Column(
                            children: <Widget>[
                              new Text(
                                  '100',
                                style: new TextStyle(fontSize: 20.0),
                              ),
                              new Text('Following'),
                            ],
                          ),
                        ),
                      ],
                    ),
                    new Row(
                      mainAxisAlignment: MainAxisAlignment.start,
                      children: <Widget>[
                        new Text("Peter Jonathan",
                          style: new TextStyle(
                            fontSize: 18.0,
                            fontWeight: FontWeight.bold,
                          ),
                          textAlign: TextAlign.left,
                        ),
                      ],
                    ),
                    new Row(
                      children: <Widget>[
                        new Text("@pj",
                          style: new TextStyle(
                            fontSize: 18.0,
                            fontStyle: FontStyle.italic,
                            color: Color.fromRGBO(155, 155, 155, 1.0),
                          ),
                        ),
                      ],
                    )
                  ],
                ),
              ],
            ),
          ],
        ),
      ),
    );
  }
}

我听说使用flexible是关键,但是当我这样做时,它不能正确编译。我需要将名称包装在容器中吗?

1 个答案:

答案 0 :(得分:2)

在您的代码的第二列下:添加-crossAxisAlignment: CrossAxisAlignment.start,

new Column(
           crossAxisAlignment: CrossAxisAlignment.start,
           children: <Widget>[],
....