我需要从一个动作表中启动不同的视图控制器。
在storyboard中创建视图控制器,然后使用标识符,从动作表单中的适当点启动它们,这是最佳实践吗?
我试着让下属工作,但没有成功。它说我需要定义窗口属性…
-(void)launchVC {
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
UIViewController *ivc = [storyboard instantiateViewControllerWithIdentifier:@"reportProblem"];
[(UINavigationController*)self.window.rootViewController presentViewController:ivc animated:NO completion:nil];
NSLog(@"should have launched by now");
}
或者,在代码中创建整个视图控制器更好吗?
仅供参考,我倾向于故事板,因为这个视图控制器有自己的类,我知道如何在故事板中设置类,但不是在代码中,但不能让它工作。
提前感谢您的建议
您在哪里实现了launchVC
方法?
如果你在你的AppDelegate
中实现了launchVC
方法,那么它应该工作。
否则,如果你已经实现了它在你的ViewController
类然后
[self presentViewController:ivc animated:NO completion:nil];