У меня есть позиционированный текстовый элемент, который находится поверх элемента изображения в стеке. Я хотел бы применить простой цвет фона к этому текстовому элементу, чтобы он обрамлял текст как поле заголовка:
Я могу сделать это, вставив Контейнер в качестве другого расположенного дочернего элемента в этом стеке. Но мне пришлось бы пересчитывать ширину каждый раз при изменении текстовой строки, что неоптимально. Есть ли способ лучше?
var stack = new Stack(
children: <Widget>[
new Image.asset ( // background photo
"assets/texture.jpg",
fit: ImageFit.cover,
height: 600.0,
),
new Positioned ( // headline
child: new Container(
decoration: new BoxDecoration (
backgroundColor: Colors.black
),
),
left: 0.0,
bottom: 108.0,
width: 490.0,
height: 80.0,
),
new Positioned (
child: new Text (
"Lorem ipsum dolor.",
style: new TextStyle(
color: Colors.blue[500],
fontSize: 42.0,
fontWeight: FontWeight.w900
)
),
left: 16.0,
bottom: 128.0,
)
]
);