列和行颤振座椅视图

我是Flutter的新手。我想使用“行”和“列”构建火车座位视图。但是我不能。 此视图也必须是可滚动的。我试过了表格小部件,但无法滚动显示。

行数和列数动态地来自api。我试图像下面一样静态构建视图,但我需要动态构建。

提前致谢。

enter image description here

 @override
  Widget build(BuildContext context) {
    return Scaffold(
    body: SingleChildScrollView(
            scrollDirection: Axis.horizontal,
            child: Column(
              children: <Widget>[
                Row(
                  children: <Widget>[
                    Container(height: 40, width: 40,child: Text("")),
                    Container(height: 40, width: 40,child: Text("1")),
                    Container(height: 40, width: 40,child: Text("2")),
                    Container(height: 40, width: 40,child: Text("3")),
                    Container(height: 40, width: 40,child: Text("4")),
                  ]
                ),
                Row(
                  children: <Widget>[
                    Container(height: 40, width: 40,child: Text("A")),
                    InkWell(onTap: () {print("00");},child:Container(height: 40, width: 40,child: Text("00"))),
                    InkWell(onTap: () {print("01");},child:Container(height: 40, width: 40,child: Text("01"))),
                    InkWell(onTap: () {print("02");},child:Container(height: 40, width: 40,child: Text("02"))),
                    InkWell(onTap: () {print("03");},child:Container(height: 40, width: 40,child: Text("03")))
                  ],
                ),
                Row(
                  children: <Widget>[
                    Container(height: 40, width: 40,child: Text("B")),
                    InkWell(onTap: () {print("10");},child:Container(height: 40, width: 40,child: Text("10"))),
                    InkWell(onTap: () {print("11");},child:Container(height: 40, width: 40,child: Text("11"))),
                    InkWell(onTap: () {print("12");},child:Container(height: 40, width: 40,child: Text("12"))),
                    InkWell(onTap: () {print("13");},child:Container(height: 40, width: 40,child: Text("13"))),
                  ],
                ),
                Row(
                  children: <Widget>[
                    Container(height: 40, width: 40,child: Text("C")),
                    InkWell(onTap: () {print("20");},child:Container(height: 40, width: 40,child: Text("20"))),
                    InkWell(onTap: () {print("21");},child:Container(height: 40, width: 40,child: Text("21"))),
                    InkWell(onTap: () {print("22");},child:Container(height: 40, width: 40,child: Text("22"))),
                    InkWell(onTap: () {print("23");},child:Container(height: 40, width: 40,child: Text("23"))),
                  ],
                ),
              ],
            ),
      )
    );
  }