这真的应该有效。这是在iOS中最简单的事情之一,由于某些原因它只是不起作用。
我的故事板中有两个视图控制器。一个是InitViewController,另一个是ViewController,故事板ID分别为Init和ViewOne。我在InitViewController上有一个按钮,它运行代码来切换视图。代码运行正常,但尽管如此,没有任何反应。这是代码:
-(IBAction)NextPage:(id)sender{
ViewController *wc = [[ViewController alloc]
initWithNibName:@"ViewOne"
bundle:nil];
[self.navigationController pushViewController:wc animated:YES];
}
我导入了ViewController.h,我不知道为什么这不起作用。
答案 0 :(得分:0)
initWithNibName:
适用于您在.xib
文件中创建的视图控制器,而非故事板。要使用-[UIStoryboard instantiateViewControllerWithIdentifier:]
ViewController *wc = [self.storyboard instantiateViewControllerWithIdentifier:@"ViewOne"];
[self.navigationController pushViewController:wc animated:YES];
答案 1 :(得分:0)
您需要一个NavigationController - 尝试记录self.navigationcontroller
,您会看到null
在您的故事板中添加UINavigationController
将其设置为入口点,将InitViewController
设置为根视图控制器,然后您可以使用:
ViewController *wc = [self.storyboard instantiateViewControllerWithIdentifier:@"ViewOne"];
[self.navigationController pushViewController:wc animated:YES];