Я пытаюсь создать приложение с двумя разделами, помещенными в столбец с CrossAxisAlignment.stretch. 2 секции заключены в расширенное пространство, чтобы заполнить вертикальное пространство. В верхней части есть 2 кнопки в столбце, который поддерживает высоту кнопок, но растягивает их до полной ширины, что я и хочу. В нижней части есть одна кнопка, поэтому я использовал Контейнер, чтобы заключить ее, но затем кнопка растягивается до полной ширины и высоты Контейнера. Я пробовал использовать ограничения контейнера, но не смог заставить его работать. Я мог бы использовать столбец вместо контейнера, но, как говорится в документации:
Если у вас только один дочерний элемент, рассмотрите возможность использования Align или Center для размещения ребенка.
Использование любого из этих вариантов соответствует ширине и высоте кнопки, но я не могу найти способ увеличить ширину.
final appScreen = Container(
margin: EdgeInsets.symmetric(horizontal: 40),
child: Column(
crossAxisAlignment: CrossAxisAlignment.stretch,
children: <Widget>[
Expanded(
flex: 3,
child: Column(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
crossAxisAlignment: CrossAxisAlignment.stretch,
children: <Widget>[
RaisedButton(
child: Text('Button 1'),
onPressed: null,
),
RaisedButton(
child: Text('Button 2'),
onPressed: null,
),
],
),
),
Expanded(
child: Container(
child: RaisedButton(
child: Text('Button 3'),
onPressed: null,
),
),
),
],
),
);