我尝试使用“显示全部”按钮(绿色箭头)从Flutter项目的“主页”页面(左)导航到“显示全部”页面(右)。当在“主页”页面中选择“男性/女性/儿童”选项卡时,应在“显示全部”页面中选择相同的选项卡,显示该选项卡中的产品。
cngwdvgl1#
所有你需要使用的标签是在这个演示:Work with tabs
创建您自己的标签页导航按钮,手动设置每个操作以替换您的应用内容。通过这种方式,您可以自定义过渡,动画等。
请注意,您可以创建任何类型的页面导航。您可以创建一个完整的页面,但请注意,它将绘制在您调用操作的当前页面上:
Navigator.push( context, MaterialPageRoute(builder: (context) => YourScreen()), );
cxfofazt2#
你有两个选择1.调用Navigator.push()(或等效项)时,将当前选项卡值传递到“显示全部”页。Example 1 ; example2。这样做的好处是实现起来非常简单和快速,但缺点是,如果你在“显示全部”页面中更改标签,如果你返回,它将不会与“主页”页面同步。1.将当前选中的标签存储在小部件树中这两个页面的“上方”,这样它们就可以将其作为共享状态引用。实施例1这样做的好处是可以同步两个页面,但稍微复杂一些。
Navigator.push()
2条答案
按热度按时间cngwdvgl1#
简单方法:
所有你需要使用的标签是在这个演示:Work with tabs
更难的方法:
创建您自己的标签页导航按钮,手动设置每个操作以替换您的应用内容。通过这种方式,您可以自定义过渡,动画等。
关于导航:
请注意,您可以创建任何类型的页面导航。您可以创建一个完整的页面,但请注意,它将绘制在您调用操作的当前页面上:
cxfofazt2#
你有两个选择
1.调用
Navigator.push()
(或等效项)时,将当前选项卡值传递到“显示全部”页。Example 1 ; example2。这样做的好处是实现起来非常简单和快速,但缺点是,如果你在“显示全部”页面中更改标签,如果你返回,它将不会与“主页”页面同步。
1.将当前选中的标签存储在小部件树中这两个页面的“上方”,这样它们就可以将其作为共享状态引用。实施例1
这样做的好处是可以同步两个页面,但稍微复杂一些。