如何以编程方式从导航控制器导航视图控制器

时间:2014-03-15 14:09:38

标签: ios iphone objective-c uinavigationcontroller

您好我尝试导航到使用对象连接的导航视图控制器查看控制器

我想通过编程方式进行,但它的工作不显示黑屏。请告诉我如何解决这个问题。

- (IBAction)reg:(id)sender {
    pollpoliticalViewController *vc2 = [[pollpoliticalViewController alloc] init];
    [self.navigationController pushViewController:vc2 animated:YES];
}

以上代码我习惯导航但是它的黑色屏幕没有显示视图控制器,请告诉我我做错了。

感谢。

1 个答案:

答案 0 :(得分:0)

上述代码没有任何问题。

当我理解你在做什么时,你有一个名为pollpoliticalViewController的视图控制器类。我的第一个建议是让你研究Objective-C中可接受的编码风格。你应该总是把类大写。在这个例子中,该类应该被称为' PollPoliticalViewController`。显然,这不是问题的根源。

问题出在视图控制器本身。在pollpoliticalViewController的代码中,你做错了什么,没有显示视图。

视图控制器实际上可以在.xib文件中设置样式,在这种情况下,您应该像这样初始化视图控制器:

pollpoliticalViewController *pollVC = [[pollpoliticalViewController alloc] initWithNibName:@"pollpoliticalViewController" bundle:nil];

如果视图控制器是在故事板内定义的,则必须为视图控制器提供一个“故事板ID”,例如; ' PollPoliticalVCID&#39 ;.然后你需要像这样初始化它(假设你的故事板被调用" MainStoryboard":

pollpoliticalViewController *pollVC = [[UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil] instantiateViewControllerWithIdentifier:@"PollPoliticalVCID"];

修改

当您打开故事板时,会找到故事板名称,选择任何视图控制器。打开Utilities侧栏(在Xcode的右侧),选择第一项,您可以在Identity和Type下找到该名称。我已经包含了一张图片。

Storyboard Name