在 flutter 中有一个可以扩展和容纳小部件的 AppBar

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

我正在编写一个应用程序,我希望在我的应用程序栏中有谷歌地图,可以通过向下滚动应用程序栏来降低它。

我们已经尝试了很多东西并留在 SliverAppBar 上。首先,我们尝试使用图像。问题是滑块区域在整个屏幕上,我们希望它只在 AppBar 上!

这是我们的代码:


  Widget build(BuildContext context) {
    return Scaffold(
        body:
        NestedScrollView(
           headerSliverBuilder: (BuildContext context, bool innerBoxIsScrolled) {
          return <Widget>[AppBarHomePage()];
          },
           body: Text("Test"),
    ));
  }
}


class AppBarHomePage extends StatefulWidget {
  const AppBarHomePage({super.key});

  @override
  State<AppBarHomePage> createState() => _AppBarHomePageState();
}

class _AppBarHomePageState extends State<AppBarHomePage> {
  @override
  Widget build(BuildContext context) {
    return SliverAppBar(
        expandedHeight: MediaQuery.of(context).size.height,
        floating: true,
        pinned: true,
        snap: true,
        actionsIconTheme: IconThemeData(opacity: 0.0),
        flexibleSpace:  Stack(
                children: <Widget>[
                  GoogleMapWidget()
                ],
              ),
        );
  }
}

Gif preview here

flutter flutter-animation
1个回答
1
投票

此解决方案将帮助您解决扩展应用栏 https://flutterawesome.com/custom-flutter-sliverappbar-behavior/

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