如何在 Swift 编程中获得基于导航的模板功能
How to get navigation based template functionality in Swift programming
我的项目需要一个导航控制器,我的应用程序最初有一个社交登录。验证身份验证后,用户将被推送到另一个视图,我在其中显示一个具有 2 个选项卡的 tabbarcontroller。
我不知道如何在 Swift 编程中做到这一点。我已经将我的 viewcontroller 嵌入到导航控制器中,一旦身份验证成功,我该如何将用户推送到标签栏视图? Tabbar 也应该有导航。
我想将您的想法复制到我通常在以下示例中所做的事情中。
我的故事板是这样的:
如您所见login/signup 并且标签栏未与任何类型的 Segue 连接。
此处登录导航控制器是初始控制器的设置。
为此导航控制器分配故事板 ID(例如LoginNavigation):
对 Tab Bar Controller 做同样的事情,分配 Storyboard ID(例如 HomeTabBar)
现在,您只需在登录导航和标签栏之间切换应用程序的根视图控制器。
因此,如果用户成功登录,请使用以下代码将应用程序的根视图更改为 HomeTabBar:
let storyboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let home: UITabBarController = storyboard.instantiateViewControllerWithIdentifier("HomeTabBar") as! UITabBarController
appDelegate.window?.rootViewController = home
并且当用户登录我们时,再次将根视图更改为 Login Nav:
let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let entryPoint:UIViewController = mainStoryboard.instantiateViewControllerWithIdentifier("LoginNavigation")
appDelegate.window?.rootViewController = entryPoint
appDelegate
在我的 constants.swift
文件中定义:
let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
我的项目需要一个导航控制器,我的应用程序最初有一个社交登录。验证身份验证后,用户将被推送到另一个视图,我在其中显示一个具有 2 个选项卡的 tabbarcontroller。
我不知道如何在 Swift 编程中做到这一点。我已经将我的 viewcontroller 嵌入到导航控制器中,一旦身份验证成功,我该如何将用户推送到标签栏视图? Tabbar 也应该有导航。
我想将您的想法复制到我通常在以下示例中所做的事情中。
我的故事板是这样的:
如您所见login/signup 并且标签栏未与任何类型的 Segue 连接。
此处登录导航控制器是初始控制器的设置。
为此导航控制器分配故事板 ID(例如LoginNavigation):
对 Tab Bar Controller 做同样的事情,分配 Storyboard ID(例如 HomeTabBar)
现在,您只需在登录导航和标签栏之间切换应用程序的根视图控制器。
因此,如果用户成功登录,请使用以下代码将应用程序的根视图更改为 HomeTabBar:
let storyboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let home: UITabBarController = storyboard.instantiateViewControllerWithIdentifier("HomeTabBar") as! UITabBarController
appDelegate.window?.rootViewController = home
并且当用户登录我们时,再次将根视图更改为 Login Nav:
let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let entryPoint:UIViewController = mainStoryboard.instantiateViewControllerWithIdentifier("LoginNavigation")
appDelegate.window?.rootViewController = entryPoint
appDelegate
在我的 constants.swift
文件中定义:
let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate