我正在开发一个有多个视图的应用。如何从一个viewController转换到另一个viewController。 我将从具有故事板的“ViewController”转到具有xib文件的“Question1ViewController”。代码也可以在Objective-c中(我还在学习swift:=)) 感谢
答案 0 :(得分:3)
有几乎无限的方法可以做你要求的事情。
由于您对此非常陌生,如果您使用单一方式来管理视图控制器 - 故事板或 xib文件,而不是两者都可能会更好。
每个人都有它的怪癖,并试图学会同时使用两者,这意味着你必须同时学习两种不同的做事方式。
首先,您需要决定所需的转换类型。
最简单的方法是将导航控制器放在Storyboard中,然后通过调用initWithNibName:bundle:
创建新的视图控制器,然后使用直接调用导航控制器方法将其推送到导航控制器pushViewController:animated:
。 (您不能使用故事板方法来调用未存储在故事板中的视图控制器。)
答案 1 :(得分:1)
您可以使用以下方式在视图控制器之间切换:
#import "Question1ViewController.h"
//together with all the other imports
然后在您想要显示视图控制器的地方(如果您有导航控制器):
Question1ViewController *vc = [[Question1ViewController alloc]initWithNibName:@"Question1ViewController" bundle:[NSBundle mainBundle]];
[self.navigationController pushViewController:vc animated:YES];
如果您没有导航控制器,请使用:
Question1ViewController *vc = [[Question1ViewController alloc]initWithNibName:@"Question1ViewController" bundle:[NSBundle mainBundle]];
[self presentViewController:vc animated:YES completion:nil];