颤振力容器最小

时间:2018-07-05 03:00:21

标签: flutter flutter-layout

我正在为细分控件创建自定义窗口小部件。

return Padding(
  padding: const EdgeInsets.symmetric(vertical: 20.0),
  child: Container(
    decoration: BoxDecoration(border: Border.all(color: Colors.blue)),
    child: Row(
      mainAxisSize: MainAxisSize.min,
      children: buttons,
    ),
  ),
);

我希望容器缩小到最小尺寸以容纳其子容器。但是,当我将小部件包含在父级中时,它将扩展以填充父级。这是可见的,因为装饰的边框大于按钮。

如何强制容器收缩?

3 个答案:

答案 0 :(得分:7)

要使容器不占用整个父对象,您需要告诉它应将其放置在父对象中的哪个位置-默认情况下,它不知道要去哪里,因此会填充父= D。

最简单的方法是使用AlignCenter小部件。我相信在这种情况下,您希望将其放在Container周围,但我不确定100%。

答案 1 :(得分:1)

在Row()小部件中包装容器,使容器缩小到此处的Container的子尺寸, https://github.com/flutter/flutter/issues/4949

Row(
 mainAxisAlignment: MainAxisAlignment.center,
 crossAxisAlignment: CrossAxisAlignment.center,
   children: [
     Container(
       child:button()   
     ),
   ]
),

答案 2 :(得分:0)

晚些时候参加聚会了……我还是很陌生,所以请放轻松,但是我认为使用AlignCenter作为Parent,然后设置Width的{​​{1}}和Height值,则父级应缩小到子级。 = D