【问题标题】:Calling storyboard from UIViewcontroller从 UIViewcontroller 调用情节提要
【发布时间】:2014-01-28 16:20:45
【问题描述】:

我不知道这是否可能,但我使用 xibs 编写了一个项目,并希望以模态方式切换到情节提要项目。

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

NewViewController *NewVC = [[NewViewController alloc] init];
[self presentModalViewController:NewVC animated:YES];

单击按钮后,我将其称为“切换”

还有另一个项目只使用故事板,我想使用“switch”来调用它

我该怎么做呢?可以这样做吗?

【问题讨论】:

  • 寻找instantiateViewControllerWithIdentifier。请使用小写作为变量的第一个字母(此处为 NewVC 到 newVC)。
  • 谢谢,以后会做的。

标签: ios uiviewcontroller modal-dialog storyboard


【解决方案1】:

是的,这是可能的。你可以这样做:

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"YourStoryboardName" bundle:nil];
MainMenuViewController *mainmenuvc = [storyboard instantiateViewControllerWithIdentifier:@"mainMenuViewController"];
[self.navigationController pushViewController:mainmenuvc animated:YES];

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

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"RVCStoryboard" bundle:nil];
MainMenuViewController *mainmenuvc = [storyboard instantiateViewControllerWithIdentifier:@"mainMenuViewController"];
[[UIApplication sharedApplication].delegate].window.rootViewController = mainmenuvc;

请注意,要使其正常工作,您必须在您的 RVCStoryboard 中选择您尝试加载的视图控制器,并为其指定一个名称,以便 instantiateViewControllerWithIdentifier: 方法可以正常工作。检查所附图像,“故事板 ID”字段:

【讨论】:

  • 感谢您的帮助!我想我应该更清楚。我有一个 VC,我想去的 RootViewController,它使用我的故事板 RVCStoryboard.storyboard。如果我可以让您输入的代码正常工作,这是否从 VC(即 xib)“切换”按钮打开到 RootViewController/RVCStoryboard?
  • 故事板包含一个导航控制器和一个根视图控制器,其中包含一个表格视图。这会有所作为吗?
  • 注意:如果两个视图控制器位于同一个情节提要中,您可以简单地在实例化另一个视图控制器中使用self.storyboardself.storyboard 指的是视图控制器源自的情节提要。
猜你喜欢
  • 2012-06-28
  • 1970-01-01
  • 1970-01-01
  • 2014-06-22
  • 1970-01-01
  • 1970-01-01
  • 2012-08-09
  • 2012-07-22
  • 2013-11-10
相关资源
最近更新 更多