gpt4 book ai didi

ios - 如何在 Swift 中不使用导航 Controller 的情况下将选项卡栏菜单传播到 subview

转载 作者:行者123 更新时间:2023-11-30 12:30:15 25 4
gpt4 key购买 nike

我有一个选项卡栏导航 Controller ,对于选项卡栏上可用的选项之一,我想执行以下操作,本例中的选项名称是“订单历史记录”。

我想要一个带有事件指示器的简单 View Controller 来从我的 Firebase 数据库获取数据。收集完所有数据后,我就有了一个 if 语句。如果对 Firebase 的查询没有返回任何值,我想转向另一个 View Controller ,该 Controller 将向用户显示他/她尚未下任何订单。但是,如果对 Firebase 的查询返回任何订单历史数据,那么我想转至一个 TableView Controller ,该 Controller 将以有组织的方式显示所有数据。

我遇到的问题是我希望在上述每个 subview 的底部都有标签栏菜单。我知道我可以通过将第一个 View (带有事件指示器的 View )嵌入到导航 Controller 中来做到这一点。但是,我注意到,一旦我点击不同的选项卡栏项目,然后返回到此选项卡栏项目(“订单历史记录”选项卡栏项目),它不会显示带有事件指示器的第一个 View 来执行对再次数据库。相反,它会返回到导航堆栈中显示的最后一个 View ,该 View 向用户显示他/她尚未下任何订单。重要的是每次都执行对数据库的查询,以确保每次都刷新数据。

如果您能提供有关如何最好地实现这一点的意见,我将不胜感激。我正在使用 Storyboard来完成这一切。谢谢

最佳答案

您可以将 orderHistoryNavController 保留为选项卡栏中的 viewController。在标签栏中保留对导航 Controller 的弱引用,然后重写 UITabbar:didSelectViewController ,如下所示。

func tabBarController(_ tabBarController: UITabBarController, didSelect viewController: UIViewController) { orderHistoryNavController.popToRootViewController(NO)}

每当选择新选项卡时,这都会弹出到事件指示器(即使隐藏)。

关于ios - 如何在 Swift 中不使用导航 Controller 的情况下将选项卡栏菜单传播到 subview ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43645320/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com