【发布时间】:2021-05-28 16:58:04
【问题描述】:
我正在尝试为我自己的 Flutter 应用程序复制一些类似于 Google 地图的功能。同样基于地图,我希望用户能够选择兴趣点并可以选择导航到所述位置。
当他们点击“导航”时,我希望底部工作表出现在现有底部导航栏的位置(或顶部),用于基于选项卡的导航。
showModalBottomSheet() 会这样做,但是它有一个屏障阻止用户与父视图交互。我需要它没有障碍。
showBottomSheet() 没有障碍,但也没有放置在底部导航栏的顶部。
是否有一些解决方案才能拥有此功能?我唯一能想到的是将底部导航栏添加到一个容器中,该容器将根据用户是否正在导航来显示/隐藏,但我觉得这是一个相当黑的解决方案,并希望有更优雅的东西。
我在下面附上了几张图片:
- 第一个屏幕截图显示了具有底部导航栏的 iOS 上的 Google 地图标准视图。
- 第二个屏幕截图显示了“导航前”视图,它是位于底部导航栏顶部(或代替底部导航栏)的底部工作表。这是我试图复制的观点。
【问题讨论】:
-
你找到什么好的解决方案了吗?我有同样的问题:D
-
我最终做了类似于 Guillaume 在下面回答的事情。我将包含 BottomNavigationBar 的 Scaffold 包装到 Stack 小部件中,然后在其顶部添加我的自定义导航视图,并将其设置为在用户进入“导航模式”时显示。我已经在下面为您发布了我的代码。 stackoverflow.com/a/68208539/1280479
标签: flutter