我正在使用TextAlign
来使一个文本居中,然后再次向右发送另一文本,所有文本都包含在Row
中,但是对齐完全不起作用。 / p>
Scaffold(
body: Row(
children: <Widget>[
Text('Align Centre', textAlign: TextAlign.center),
Text('Align Right', textAlign: TextAlign.right),
],
),
);
您可以在这里看到它被完全忽略:
答案 0 :(得分:1)
听起来您正在追寻这样的东西:
return Scaffold(
body: Center(
child: Row(
children: <Widget>[
SizedBox(width: MediaQuery.of(context).size.width / 3.3333333,),
Expanded(child: Text('Align Centre adding more text heree....', textAlign: TextAlign.center)),
Expanded(child: Text('Align Right', textAlign: TextAlign.right)),
],
),
),
);
首先在行中添加一个空容器,将“对齐中心”文本推入中间。
编辑:而不是使用扩展的小部件,而是使用大小框,并固定宽度以占用视图的三分之一。
答案 1 :(得分:0)
使用展开的小部件换行:
Scaffold(
body: Row(
children: <Widget>[
Expanded(child: Text('Align Centre', textAlign: TextAlign.center)),
Expanded(child: Text('Align Right', textAlign: TextAlign.right)),
],
),
);
默认情况下,文本仅占用内容所需的空间。
或者您可能想要的:
Scaffold(
body: Stack(
children: <Widget>[
Positioned.fill(
child: Text('Align Centre', textAlign: TextAlign.center)),
Positioned.fill(
child: Text('Align Right', textAlign: TextAlign.right)),
],
),
);
答案 2 :(得分:0)
Scaffold(
body: Row(
children: <Widget>[
Container(
width:screen_width/2,
alignment: Alignment.center,
child: Text('Align Centre',),
),
Container(
width:screen_width/2,
alignment: Alignment.centerRight,
child: Text('Align right',),
),
],
),
);
您可以通过
获得screen_widhtdouble screen_width = MediaQuery.of(context).size.width;