推送视图控制器后从情节提要加载视图

Posted

技术标签:

【中文标题】推送视图控制器后从情节提要加载视图【英文标题】:After Pushing View Controller Load a View From Storyboard 【发布时间】:2013-07-28 20:36:57 【问题描述】:

我正在尝试在您更改设备方向时显示不同的视图控制器,为此我正在使用 UINavigation 控制器。当我要求推送另一个视图控制器[self.navigationController pushViewController:graphView animated:YES]; 它会进行转换,但屏幕是黑色的,并且不会加载这个新控制器“graphView”的视图,它是白色的文本。我已经为新控制器完成了graphView = [[GraphView alloc] init];,但我没有从当前视图到图形视图的任何情节提要连接,我的新视图控制器中也没有任何东西:

- (void)viewDidLoad 
    //[super viewDidLoad];

    NSLog(@"loaded");

是否有额外的步骤,因为这是一个新的视图控制器,可以从我的故事板上的这个视图控制器加载视图?日志也确实有效,这意味着正确。

【问题讨论】:

这个答案对我有用***.com/questions/12130981/… 【参考方案1】:

而不是像这样初始化“graphView”:

graphView = [[GraphView alloc] init];

您需要这样做:

UIStoryboard *storyBoard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
graphView = [storyboard instantiateViewControllerWithIdentifier:@"YourViewControllerId"];

**并确保在情节提要中设置 ViewController 的情节提要标识符:

    选择您的视图控制器 点击身份检查器 设置 Storyboard ID(上面的“YourViewControllerId”)

然后,像以前一样调用pushViewController:animated: 应该适当地展示您的 ViewController。

【讨论】:

你试过这个答案吗?

以上是关于推送视图控制器后从情节提要加载视图的主要内容,如果未能解决你的问题,请参考以下文章

推送视图控制器不显示从情节提要添加的元素

在情节提要中推送多个视图控制器

iOS 在使用情节提要推送视图控制器时传递数据

使用 ios5 和情节提要推送带有参数的视图控制器

无法从情节提要显式加载视图控制器

将单独的 xib 视图控制器加载到情节提要导航中[重复]