如何保持“ SliverPersistentHeader”固定在顶部,直到向下滚动后到达“ SliverList”的第一项?

问题描述 投票:1回答:1

我正在CustomScrollView中将SliverPersistentHeader与SliverList一起使用。我不希望我的SliverPersistentHeader下降到达到SliverList的第一项(索引:0)。即使我在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"),
                ),
              ),
            )
          ],
        ),
      ),
    );
  }
}
android flutter flutter-layout flutter-animation flutter-sliver
1个回答
0
投票

尝试将设置固定为false,并保持浮动为true。这是每个人的工作。

浮动:标题是否应立即增长如果用户反转滚动方向,请再次输入。

固定:是否将标头粘贴到视口达到最小尺寸后。

© www.soinside.com 2019 - 2024. All rights reserved.