我整天都收到了同样的错误,我明白这说错了在故事板中,但它是。以下是我认为相关的代码: 1.IBAction为按钮发出信号。
-(IBAction)launchScanner:(id)sender{
NSLog(@"launch Scanner pressed");
[self performSegueWithIdentifier:@"launchScanner" sender:self];
}
这是对segue函数的准备,我暂时把它留空,不确定我是否需要在其中包含一些内容。
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if([[segue identifier] isEqualToString:@"launchScanner"]){
}
}
我最初以编程方式创建了所有内容,以下是我实例化导航控制器的方法(这是在appdelegate.m中):
ViewController *myViewController = [[ViewController alloc] init];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:myViewController];
_window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
_window.rootViewController = navigationController;
[_window makeKeyAndVisible];
答案 0 :(得分:1)
如果要以编程方式实例化导航控制器,则需要从故事板中获取对它的引用。如果您需要在加载初始VC之前在应用程序委托中执行某些功能,则可以使用此方法。
UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"Main" bundle: nil];
UINavigationController *initialNavVc = (UINavigationController *)[mainStoryboard instantiateInitialViewController];
self.window.rootViewController = initialNavVc;
答案 1 :(得分:0)