我在一行的左侧对齐文本时遇到麻烦。
布局如下所示:
但是,我希望用户名(“ 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是关键,但是当我这样做时,它不能正确编译。我需要将名称包装在容器中吗?
答案 0 :(得分:2)
在您的代码的第二列下:添加-crossAxisAlignment: CrossAxisAlignment.start,
new Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[],
....