在颤动中设置列宽

时间:2018-10-12 17:03:37

标签: user-interface dart flutter

我需要在Flutter中设置列宽,我必须做一个包含3个部分的布局,一个应该是屏幕的20%,另一个应该是屏幕的60%,最后一个应该是20%。 我知道那3列应该排成一行,但是我不知道一种设置大小的方法,当我这样做时,这3列采用相同的大小。

感谢您的反馈。

2 个答案:

答案 0 :(得分:30)

建议不要像这样对大小进行硬编码

Flex

将产生以下内容, enter image description here

答案 1 :(得分:4)

对于将来的访问者,将width中的Column限制为

  1. 限制width本身的Column,请使用SizedBox

    SizedBox(
      width: 100, // set this
      child: Column(...),
    )
    

2(A)。将width中的children限制在Column内,没有硬编码值

Row(
  children: <Widget>[
    Expanded(
      flex: 3, // takes 30% of available width 
      child: Child1(),
    ),
    Expanded(
      flex: 7, // takes 70% of available width  
      child: Child2(),
    ),
  ],
)

2(B)。将width中的children限制在Column内,使用硬编码值

Row(
  children: <Widget>[
    SizedBox(
      width: 100, // hard coding child width
      child: Child1(),
    ),
    SizedBox(
      width: 200, // hard coding child width
      child: Child2(),
    ),
  ],
)