Это мой код, я передаю "Keyname" виджету без сохранения состояния, этот виджет обернут гибким виджетом в другом файле dart.
Я получаю эту ошибку:
Переполненный RenderFlex имеет ориентацию Axis.vertical. Край RenderFlex, который выходит за пределы, был отмечен на рендеринге желто-черным полосатым узором. Обычно это вызвано тем, что содержимое слишком велико для RenderFlex.
Рассмотрите возможность применения коэффициента гибкости (например, с помощью расширенного виджета), чтобы заставить дочерние элементы RenderFlex уместиться в доступном пространстве вместо того, чтобы их размер соответствовал их натуральный размер. Это считается ошибкой, поскольку указывает на то, что есть контент, который нельзя увидеть. Если содержимое действительно больше, чем доступное пространство, подумайте о том, чтобы обрезать его с помощью виджета ClipRect, прежде чем помещать его во гибкий, или используйте прокручиваемый контейнер, а не Flex, например ListView.
Вот код:
Flexible(
flex: 2,
child: Container(
padding: EdgeInsets.all(10.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
KeyBoardButtonFirstRow(
width: deviceWidth / 6,
color: Color(0xfffdc40d),
keyName: '2nF',
),
KeyBoardButtonFirstRow(
width: deviceWidth / 6,
color: Color(0xff52e2fe),
),
KeyBoardButtonFirstRow(
width: deviceWidth / 2,
color: Color(0xffabbfc5),
),
],
),
class KeyBoardButtonFirstRow extends StatelessWidget {
final String keyName;
final double width;
final Color color;
KeyBoardButtonFirstRow({this.keyName, this.width, this.color});
@override
Widget build(BuildContext context) {
return Container(
height: 30.0,
width: width,
decoration: BoxDecoration(
color: color,
borderRadius: BorderRadius.circular(10.0),
boxShadow: [BoxShadow(
color: Colors.white.withOpacity(0.5),
blurRadius: 2.0,
)],
),
child: Text(keyName),
);
}}