推送视图控制器从故事板加载视图后

时间:2013-07-28 20:36:57

标签: ios uiviewcontroller storyboard

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

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

    NSLog(@"loaded");
}

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

1 个答案:

答案 0 :(得分:0)

而不是初始化'graphView',如:

graphView = [[GraphView alloc] init];

你需要这样做:

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

**并确保在故事板中设置ViewController的故事板标识符:

  1. 选择您的ViewController
  2. 单击“标识”检查器
  3. 设置故事板ID(上面的'YourViewControllerId')
  4. 然后,按原样调用pushViewController:animated:应正确显示ViewController。