在以下代码中,我对此有疑问,我试图为Sliver子级的每个子级设置自定义高度,我只是在Flutter上了解了此小部件,并且想解决该问题,例如:>
CustomScrollView(
slivers: <Widget>[
SliverFixedExtentList(
itemExtent: MediaQuery.of(context).size.height,
delegate: SliverChildListDelegate([
ConstrainedBox(
constraints: BoxConstraints(
maxHeight: 50.0,
minHeight: 50.0
),
child: Text('dddddddddd'),
),
PageView(
children: <Widget>[
Container(color: Colors.green, child: Center(child: Text("Page 1"))),
Container(color: Colors.red, child: Center(child: Text("Page 2"))),
Container(color: Colors.indigo, child: Center(child: Text("Page 3"))),
],
),
]),
),
],
),
Text
窗口小部件的大小应为50.0,但itemExtent
避免这样做,当我为itemExtent
设置高度时,所有继承自该高度的子项高度
答案 0 :(得分:1)
顾名思义-itemExtent:
赋予每个孩子身高。
您可以简单地使用SliverList
并给每个孩子指定身高。
CustomScrollView(
slivers: <Widget>[
SliverList(
delegate: SliverChildListDelegate([
ConstrainedBox(
constraints: BoxConstraints(maxHeight: 50.0, minHeight: 50.0),
child: Center(child: Text('Child 1')),
),
SizedBox(
height: 200.0,
child: PageView(
children: <Widget>[
Container(
color: Colors.green,
child: Center(child: Text("Page 1"))),
Container(
color: Colors.red,
child: Center(child: Text("Page 2"))),
Container(
color: Colors.indigo,
child: Center(child: Text("Page 3"))),
],
),
),
]),
),
],
),