当我的 iOS 应用程序加载时,有一个选项卡 View Controller 会加载 3 个选项卡:充电、位置、更多
。当您点击“更多”时,会出现一个登录选项。当用户选择要登录的 Google 个人资料时,会显示点击“登录” -> signviewcontroller
-> 一旦成功,他们应该被引导至收费页面。如果用户在应用程序首次加载时未登录,则应显示正常选项卡 -> 费用、位置等。
问题是我不确定我的 TabViewController
和 NavigationController
是否正确对齐。单击登录后,Signviewcontroller
确实会显示,并且我也进入 ChargeViewController
,但我没有看到选项卡和导航栏项目名称费用,尽管有一个空白的导航栏.
这是我的转接代码:
self.performSegue(withIdentifier: "signin_complete", sender: self)
这是我的 Storyboard布局,尝试提取问题并显示如下:
我应该以不同的方式布局我的 View Controller 吗?我读到我需要添加导航 Controller 来修复底部选项卡,但它没有。
GIF 的外观,并注意最后一页费用如何在底部不显示任何选项卡。 gif link
最佳答案
您应该删除 Signviewcontroller
和 Navigation Controller - ChargeViewController
之间的 Segue。然后 Tabbar 将出现在该导航 Controller 上,如 Location
。
这是我的例子:
然后您应该创建自己的UITabBarController
类。之后,您可以在 tabBar didSelect
内控制 View Controller 。检查签名状态和根 SignViewController 或 ChargeViewController。
override func tabBar(_ tabBar: UITabBar, didSelect item: UITabBarItem) {
let nav: UINavigationController = self.tabBarController?.viewControllers?.first as! UINavigationController
//get sign or charge view controller
nav.setViewControllers([sign or charge], animated: true)
}
关于ios - 拥有 tabviewcontroller 和导航 Controller segue 不会显示底部选项卡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44558175/