我是Android开发者学习颤栗。我要我的屏幕看起来像这样:
|---------------------------------|
| |
| Babe I miss you |
| |
|---------------------------------|“宝贝”和“我想你”应该是两个独立的元素。
使用Android,我会用LinearLayout来解决这个问题,而对于每个TextView,我会解决两个带有weight=1的TextView。颤栗的另一个选择是什么?
我知道你可以用FrameLayout或者RelativeLayout来解决这个问题,但是我想要最接近LinearLayout的行为。
发布于 2018-03-13 07:01:20
Flutter的Row小部件等价于android的LinearLayout with android:orientation="horizontal",Column小部件等效于android的LinearLayout with android:orientation="vertical"。
flex属性的Flexible小部件是等价的weight属性,您可以将Text小部件包装在Flexible小部件中并指定flex属性。
示例:
new Row(
children: <Widget>[
new Flexible(child: new Text("Babe"), flex: 1,),
new Flexible(child: new Text("I miss you"), flex: 1,)
],
)希望这能帮上忙!
发布于 2019-10-16 18:30:00
使用扩容小部件还可以产生如下所示的LinearLayout效果:
Row(
children: <Widget>[
Expanded(
child: Container(child: Text("Babe")),
flex: 2,
),
Expanded(
child: Container(child: Text("I don't miss you"),alignment: Alignment.centerRight),
flex: 2,
),
],
),发布于 2018-12-27 17:53:53
考虑到问题中的布局,您想要在屏幕的末尾显示两个文本,一个在开始,另一个在末尾,您可以简单地将MainAxisAlignment.spaceBetween属性添加到行中。
所以你需要修改你的代码
child: new Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
new Text('Babe'),
new Text('I miss you')
]
)

我不明白为什么第一个答案被接受了,因为它只是在屏幕的最右端添加了两个文本,
提示:如果您需要在每个文本周围添加一些填充,将每个文本包装在容器中,并添加所需的填充和页边距
https://stackoverflow.com/questions/49249966
复制相似问题