如何以编程方式将UIViewController分配给UITabbarControllers选项卡

时间:2016-10-08 06:58:18

标签: storyboard segue swift3 xcode8

我为用户提供了两种不同的配置文件。一个是普通会员,一个是高级会员。我使用Storyboard中的Xcode 8创建了应用。应用程序启动后,它会询问用户他是普通会员还是高级会员。对于一般成员,流程适用于Storyboard中链接的segue。带有个人资料图标的UITabbar会将用户带到个人资料中。但是,如何以编程方式在同一Storyboard中加载高级会员资料?

1 个答案:

答案 0 :(得分:0)

UITabbarController具有Array属性,用于保存其标签所代表的UIViewController。我没有时间测试,但原则上你可以通过以下方式获得它:

let tabBarController = self.view.window.rootViewController
let viewControllers = tabBarController.viewControllers

然后您可以根据需要对其进行修改,例如将高级登录设置为第一个选项卡:

let storyboard = UIStoryboard(name: "MyStoryboardName", bundle: nil)
let premiumVc = storyboard.instantiateViewControllerWithIdentifier("identifierOfPremiumVC_mustBeSetInStoryboardsInspector") as! UIViewController
viewControllers[0] = premiumVc
相关问题