我很想知道我是否可以开发一个拥有2个视图控制器的应用程序。我已经浏览了一些链接,但是如果我使用的是storyboard,我找不到解决方案。如果我已经有了一个rooviewcontroller,我该怎么办?删除它并添加另一个视图作为rootviewcontroller?有什么想法吗?
答案 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,如图所示:
如果它符合您的要求,请告诉我。
答案 1 :(得分:1)
在app中只有一个rootviewController,
您可以使用以下内容直接替换
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
YourVC *rootViewController = [storyboard instantiateViewControllerWithIdentifier:@"YourVC"];
self.window.rootViewController = rootViewController;