我在 CustomScrollView 中使用 SliverPersistentHeader 和 SliverList。在到达 SliverList 的第一项(索引:0)之前,我不希望我的 SliverPersistentHeader 下降。即使我在 sliverlist 的索引 50 处,当我向下滚动时,标题仍然会下降。有什么捷径可以实现吗?
这是我得到的 ==>> https://i.imgur.com/yl48Kx2.gif
class Home extends StatelessWidget {
@override
Widget build(BuildContext context) {
return SafeArea(
child: Material(
child: CustomScrollView(
slivers: [
SliverPersistentHeader(
delegate: MySliverAppBar(expandedHeight: 250),
pinned: true,
floating: true,
),
SliverSafeArea(
sliver: SliverAppBar(
pinned: true,
backgroundColor: Color(0xffA2B8A1),
),
),
SliverList(
delegate: SliverChildBuilderDelegate(
(_, index) => ListTile(
title: Text("Index: $index"),
),
),
)
],
),
),
);
}
}
最佳答案
尝试将 pinned
设置为 true
并将 floating
设置为 false
。
这是每个人所做的。
float :标题是否应立即增长 如果用户反转滚动方向,则会再次出现。
Pinned:是否将页眉贴在开头 视口(viewport)一旦达到其最小尺寸。
关于android - 如何在向下滚动后到达 “SliverPersistentHeader” 的第一项之前将 “SliverList” 固定在顶部?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60125051/