【发布时间】:2015-02-08 21:41:58
【问题描述】:
我正在使用情节提要,并将UITabBarController 设置为根控制器。我在标签栏中有 3 个标签项,对于第一个,我有一个 UINavigationController。我希望动态设置此导航控制器的根视图控制器:根据用户提供的参数,我有两个候选视图控制器。
我正在尝试在AppDelegate 中这样做:
UIStoryboard *storyboard = self.window.rootViewController.storyboard;
if (condition1) {
UINavigationController *navViewController = [storyboard instantiateViewControllerWithIdentifier:@"navController"];
UIViewController *viewController = [storyboard instantiateViewControllerWithIdentifier:@"homeController1"];
[navViewController setViewControllers:@[viewController]];
} else if (condition2) {
UINavigationController *navViewController = [storyboard instantiateViewControllerWithIdentifier:@"navController"];
UIViewController *viewController = [storyboard instantiateViewControllerWithIdentifier:@"homeController2"];
[navViewController setViewControllers:@[viewController]];
但它不起作用。在情节提要中,homeController1 norhomeController2 也没有任何转场。我怎么能这样做?
谢谢
【问题讨论】:
-
当您说“它不起作用”时,发生的事情与您的预期不同?您是否验证了所有变量都不为零?
-
@oltman 这意味着没有加载视图控制器......是的,我已经检查过当我从情节提要实例化时得到非零引用
标签: ios uiviewcontroller uinavigationcontroller storyboard