【发布时间】:2020-12-18 08:33:38
【问题描述】:
我有一个有状态的小部件,顶部有标签,下面有一个列表。该列表细分为不同的类别。每个类别都列在每个选项卡中。我想要做的是当在选项卡中按下一个项目时,我希望它在列表中的相应类别滚动查看。
以下是相关代码供参考:
SliverPersistentHeader(
pinned: true,
delegate: _SliverAppBarTabDelegate(
child: Container(
child: TabBar(
isScrollable: true,
labelColor: Colors.black,
tabs: createTabList(),
controller: tabBarController,
),
),
),
),
SliverList(
delegate: SliverChildBuilderDelegate(
(context, index) {
return Padding(
padding: const EdgeInsets.only(top: kSpacerRegular),
child: RestaurantMenuCard(menuCard: menuCards[index]),
);
},
childCount: menuCards.length,
),
),
我整天都在寻找解决方案,但找不到。我也试过这个package,但在我的情况下似乎不起作用。
这是我的“小部件树”以获得更多上下文:
@override
Widget build(BuildContext context) {
return Scaffold(
body: CustomScrollView(
slivers: <Widget>[
SliverAppBar(),
SliverPersistentHeader(),
SliverList(),
],
),
);
}
更多上下文的屏幕截图
【问题讨论】:
-
为什么不用
ListView而不是SliverList? -
我需要我的条子一起滚动。因此,我的 RestaurantMenuCards(SliverList 的子项)不能自行滚动。
-
我更新了问题以获得更多上下文。
标签: flutter