代码之家  ›  专栏  ›  技术社区  ›  Shahzad Akram

Flatter ExpansionFile子项作为Gridview?

  •  0
  • Shahzad Akram  · 技术社区  · 7 年前

    目前我正在使用此代码获取ListView。

    children : myData.map((data) {return MyWidget()}).toList()
    

    1 回复  |  直到 7 年前
        1
  •  5
  •   soupjake    7 年前

    SingleChildScrollView(
              child: Column(children: <Widget>[
                ExpansionTile(title: Text("Category 1"), children: <Widget>[
                  GridView.count(
                      shrinkWrap: true,
                      physics: ClampingScrollPhysics(),
                      crossAxisCount: 2,
                      padding: const EdgeInsets.all(20.0),
                      crossAxisSpacing: 10.0,
                      childAspectRatio: MediaQuery.of(context).size.width /
                          (MediaQuery.of(context).size.height / 4),
                      children: <Widget>[
                        Text("SubCategory 1"),
                        Text("SubCategory 2"),
                        Text("SubCategory 3"),
                        Text("SubCategory 4"),
                        Text("SubCategory 5"),
                        Text("SubCategory 6"),
                      ])
                ]),
                ExpansionTile(title: Text("Category 2"), children: <Widget>[
                  GridView.count(
                      shrinkWrap: true,
                      physics: ClampingScrollPhysics(),
                      crossAxisCount: 2,
                      padding: const EdgeInsets.all(20.0),
                      crossAxisSpacing: 10.0,
                      childAspectRatio: MediaQuery.of(context).size.width /
                          (MediaQuery.of(context).size.height / 4),
                      children: <Widget>[
                        Text("SubCategory 1"),
                        Text("SubCategory 2"),
                        Text("SubCategory 3"),
                        Text("SubCategory 4"),
                        Text("SubCategory 5"),
                        Text("SubCategory 6"),
                      ])
                ]),
                ExpansionTile(title: Text("Category 3"), children: <Widget>[
                  GridView.count(
                      shrinkWrap: true,
                      physics: ClampingScrollPhysics(),
                      crossAxisCount: 2,
                      padding: const EdgeInsets.all(20.0),
                      crossAxisSpacing: 10.0,
                      childAspectRatio: MediaQuery.of(context).size.width /
                          (MediaQuery.of(context).size.height / 4),
                      children: <Widget>[
                        Text("SubCategory 1"),
                        Text("SubCategory 2"),
                        Text("SubCategory 3"),
                        Text("SubCategory 4"),
                        Text("SubCategory 5"),
                        Text("SubCategory 6"),
                      ])
                ])
              ]),
            )
    

    AppDemo