Я хочу контейнер , который сжимается до содержимого . Этот контейнер должен быть помещен в стек , чтобы у контейнера не было никаких ограничений извне.
ConstrainedBox(
constraints: BoxConstraints(maxWidth: 150.0, minHeight: 48.0),
child: Container(
decoration: BoxDecoration(borderRadius: BorderRadius.circular(8), border: Border.all(color: Colors.black)),
child: SelectableText(
"Text",
),
),
);
![enter image description here](https://i.stack.imgur.com/OzZu9.png)
This Код позволяет контейнеру сжиматься вокруг моего текста, что я и хочу.
Теперь я хочу центрировать дочерний виджет (текст) в моем контейнере. Я обертываю текст виджетом «Центр», и он растягивает контейнер на все доступное вертикальное пространство, что явно не было моей целью. Самое близкое, что я мог бы получить, - это решение с колонкой:
ConstrainedBox(
constraints: BoxConstraints(maxWidth: 150.0, minHeight: 48.0),
child: Container(
decoration: BoxDecoration(borderRadius: BorderRadius.circular(8), border: Border.all(color: Colors.black)),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
mainAxisSize: MainAxisSize.min,
children: <Widget>[
SelectableText(
"Node",
),
],
),
),
);
Это центрирует мой текст по вертикали, а не по горизонтали, и не похоже, что это правильный способ добиться того, чего я хочу.