Flutter 颤振:使用底部导航条实现内部导航的最佳方式
我正在开发一个颤振应用程序,现在我正在努力理解实现复杂的底部栏导航的最佳方式是什么。 以下是我的要求:Flutter 颤振:使用底部导航条实现内部导航的最佳方式,flutter,flutter-bloc,flutter-navigation,Flutter,Flutter Bloc,Flutter Navigation,我正在开发一个颤振应用程序,现在我正在努力理解实现复杂的底部栏导航的最佳方式是什么。 以下是我的要求: 导航栏上的每个按钮都应指向不同的部分 每个部分都应该能够有多个屏幕 用户可以从一个分区的任何页面导航到另一个分区的任何页面,然后返回 如果我们回头看,每个部分都应该显示上次访问的页面 例如,假设我们有两个部分,每个部分由两页组成:SectionOneA,SectionOneB,SectionTwoA,SectionTwoB 一些用例: 用户通过按下SectionOneB内的按钮从Sect
- 导航栏上的每个按钮都应指向不同的部分
- 每个部分都应该能够有多个屏幕
- 用户可以从一个分区的任何页面导航到另一个分区的任何页面,然后返回
- 如果我们回头看,每个部分都应该显示上次访问的页面
SectionOneA
,SectionOneB
,SectionTwoA
,SectionTwoB
一些用例:
- 用户通过按下
内的按钮从SectionOneB
导航到SectionOneB
,当用户从SectionOneB
返回(在android上)时,我们应该导航回SectionTwoB
SectionOneB
- 用户通过导航栏导航到
,然后通过SectionTwoA
中的按钮导航到SectionTwoA
,然后通过导航栏导航到SectionTwoB
,然后再次按下导航栏中的SectionOneA
图标。我们应该显示SectionTwoB
。如果按back键,我们应该导航到第二节b
SectionTwoA
PageViewer
从一个节切换到另一个节,然后每个节使用PageViewer
处理从一页切换到另一页的操作。在我不得不实现上面的第一个用例之前,这一切都很好,在这一点上,我觉得按照用例的要求实现一个合适的导航堆栈是相当具有挑战性的,我觉得重新思考整个事情会更好,只是我不知道实现这一点的最佳方式是什么。
临时解决方案是在第一节的PageViewer
中包含SectionTwoB
,但这不允许我突出显示正确的导航条项目
有没有关于如何处理这个问题的线索?我发现的所有例子似乎都太简单了,或者我无法理解如何将各个部分连接在一起。我将flutter_bloc用作州管理库。@Dude同意,但不可能将所有相关代码都放在这里,也不可能生成一个最小的示例。另外,我相信我现在写的文章本身没有任何特别的问题,而是在如何解决问题上走错了方向,那么把它放在这里有什么意义呢?答案可能是基于意见的,但仍然有帮助。我建议使用路由包来处理这些情况。见和。