Следующий код создает таблицу с 3 строками и 3 столбцами.Во втором ряду цвет первой и третьей ячеек не отображается - я думаю, что содержащиеся в нем контейнеры просто не имеют правильного размера и поэтому невидимы, что приводит к появлению белой ячейки по обе стороны от центральной красной ячейки.Как я могу заставить цвет боковых клеток?Также есть ли способ заставить таблицу быть идеально квадратной, учитывая, что я не знаю размера экрана или, возможно, значка?Я в основном хочу, чтобы центральная ячейка содержала мои данные, а другие ячейки действовали как тонкие границы, которые могут быть индивидуально окрашены во время выполнения.
Прикрепленное изображение моего приложения, показывающее кучу этих таблиц в Gridview.count()
,Обратите внимание на пустое пространство под каждым рядом сетки.Как я могу избавиться от этого пустого пространства?
return GestureDetector(
onTap: () => print('$name was tappped'),
child: Table(columnWidths: {
0: FixedColumnWidth(10.0),
1: FlexColumnWidth(),
2: FixedColumnWidth(10.0)
}, children: [
TableRow(children: [
TableCell(
child: Container(
color: Colors.black,
child: SizedBox(
width: 10.0,
height: 10.0,
),
),
),
TableCell(
child: Container(
color: Colors.blue,
child: SizedBox(
height: 10.0,
),
),
),
TableCell(
child: Container(
color: Colors.green,
child: SizedBox(
width: 10.0,
height: 10.0,
),
),
),
]),
TableRow(
children: [
TableCell(
child: Container(
color: Colors.blue,
child: SizedBox(
width: 10.0,
),
),
),
TableCell(
child: Container(
color: Colors.red,
alignment: Alignment.center,
child: Center(
child: Icon(
icon,
),
),
),
),
TableCell(
child: Container(
color: Colors.blue,
child: SizedBox(
width: 10.0,
),
),
),
],
),
TableRow(children: [
TableCell(
child: Container(
color: Colors.green,
child: SizedBox(
width: 10.0,
height: 10.0,
),
),
),
TableCell(
child: Container(
color: Colors.greenAccent,
child: SizedBox(
height: 10.0,
),
),
),
TableCell(
child: Container(
color: Colors.grey,
child: SizedBox(
width: 10.0,
height: 10.0,
),
),
),
]),
]),
);
Спасибо!