如何在行和文本之间使用空格?

时间:2019-06-16 12:47:33

标签: flutter flutter-layout

我正在尝试使用之间的空格来分隔两个Text窗口小部件,但是mainAxisAlignment选项都不起作用。 Screenshot of code below

enter image description here

在图片中,您可以看到Text2和Text3粘合在一起,我希望它们分开。主行中的第一个孩子需要扩展1。第二个(有问题的孩子)需要扩展为0。

Container(
  color: Colors.blue,
  child: Row(
    children: [
      Expanded(
        child: Container(
          color: Colors.orange,
          child: Text('Text1'),
        ),
        flex: 1,
      ),
      Column(
        children: [
          Row(
            children: [Text('Text2'), Text('Text3')],
          ),
          Text('Long text Long text Long text'),
        ],
      )
    ],
  ),
)

3 个答案:

答案 0 :(得分:1)

所以我意识到您为第一个孩子使用了Expanded小部件,但第二个孩子却没有使用。另外,您需要将mainAxisAlignment: MainAxisAlignment.spaceBetween添加到Row小部件中。下面是您想要实现的完整代码。

Container(
    color: Colors.blue,
    child: Row(
        children: [
            Expanded(
                child: Container(
                    color: Colors.orange,
                    child: Text('Text1'),
                ),
                flex: 1,
            ),
            Expanded(
                child: Column(
                    children: [
                        Row(
                            mainAxisAlignment: MainAxisAlignment.spaceBetween,
                            children: [
                                Text('Text2'),
                                Text('Text3')
                            ],
                        ),
                        Text('Long text Long text Long text'),
                    ],
                ),
            )
        ],
    ),
)

Desired outcome!

答案 1 :(得分:0)

使用mainAxisAlignment来间隔

 Row(
      mainAxisAlignment:MainAxisAlignment.spaceBetween,
      children: [Text('Text2'), Text('Text3')],
     ),

答案 2 :(得分:0)

在两个Spacer()之间使用Text

Text("Text2"), 
Spacer(), 
Text("Text3")