如何使用故事板在IOS App中添加2个根视图控制器

时间:2014-01-15 13:12:09

标签: objective-c uiviewcontroller ios7 xcode5 rootview

我很想知道我是否可以开发一个拥有2个视图控制器的应用程序。我已经浏览了一些链接,但是如果我使用的是storyboard,我找不到解决方案。如果我已经有了一个rooviewcontroller,我该怎么办?删除它并添加另一个视图作为rootviewcontroller?有什么想法吗?

2 个答案:

答案 0 :(得分:3)

你可以这样做。 您只需将以下代码添加到要更改rootViewController的位置/操作。

//First dismiss your currently loaded ViewController
[self dismissViewControllerAnimated:YES completion:nil];

//Get the keyWindow of the app
UIWindow *window = [[UIApplication sharedApplication]keyWindow];

NSString *identifier = @"Your_Identifier_Name_For_ViewController";// this is the identifier name(Storyboard ID)
                                                                  // of the AnotherRootViewController
                                                                  // which you have to set in your Storyboard
                                                                  // as shown in the figure.

//Now create an object of the AnotherRootViewController
AnotherRootViewController *newRootViewController = [self.storyboard instantiateViewControllerWithIdentifier:identifier];

//Finally set your newRootViewController
[window setRootViewController:newRootViewController];

将AnotherRootViewController设置为Storyboard,如图所示:

enter image description here

如果它符合您的要求,请告诉我。

答案 1 :(得分:1)

在app中只有一个rootviewController,

您可以使用以下内容直接替换

   UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
    YourVC *rootViewController = [storyboard instantiateViewControllerWithIdentifier:@"YourVC"];
    self.window.rootViewController = rootViewController;
在appDelegate方法中,