是否可以将Flutter ExpansionTile子级用作Gridview? 目前,我正在使用此代码获取ListView。
children : myData.map((data) {return MyWidget()}).toList()
我希望ExpensionTile子级作为GridView而不是ListView。我正在制作一个ExpenseionTile为Category的购物应用程序,我希望子类为GridView。
答案 0 :(得分:2)
这是我的尝试:
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"),
])
])
]),
)