从UIViewcontroller调用storyboard

Y. *_*ang 3 modal-dialog storyboard uiviewcontroller ios

我不知道这是否可能,但我使用xib编写了一个项目,并希望以模态方式切换到storyboard项目.

我知道要切换VC,你会做类似的事情

NewViewController *NewVC = [[NewViewController alloc] init];
[self presentModalViewController:NewVC animated:YES];
Run Code Online (Sandbox Code Playgroud)

点击一个按钮,我称之为"开关"

还有另一个项目使用故事板,我想用"开关"调用

我该怎么做呢?是否有可能做到这一点?

The*_*ude 5

对的,这是可能的.你可以这样做:

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"YourStoryboardName" bundle:nil];
MainMenuViewController *mainmenuvc = [storyboard instantiateViewControllerWithIdentifier:@"mainMenuViewController"];
[self.navigationController pushViewController:mainmenuvc animated:YES];
Run Code Online (Sandbox Code Playgroud)

编辑 如果我理解您的评论,您想要更改根视图控制器.你可以这样做:

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"RVCStoryboard" bundle:nil];
MainMenuViewController *mainmenuvc = [storyboard instantiateViewControllerWithIdentifier:@"mainMenuViewController"];
[[UIApplication sharedApplication].delegate].window.rootViewController = mainmenuvc;
Run Code Online (Sandbox Code Playgroud)

请注意,为了使其正常工作,您必须在RVCStoryboard中选择要加载的viewcontroller,并为其指定一个名称,以便该instantiateViewControllerWithIdentifier:方法可以正常工作.检查附加图像,"故事板ID"字段: 在此输入图像描述