我真的很喜欢将我的所有视图都放在故事板中,但有时我会根据代码生成的按钮显示一个视图,这样就没有Segue引用 - 它将是在故事板中完全断开连接。我仍然想在故事板中设计它,所以我可以对我的所有屏幕有一个很好的概述。
在加载UIViewControler时,是否可以加载故事板中设计的XIB(或故事板中的任何内容)?
答案 0 :(得分:24)
我在我的项目中这样做:
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
UIViewController *myController = [storyboard instantiateViewControllerWithIdentifier:@"MyViewController"];
[self.navigationController pushViewController: myController animated:YES];
确保您已正确设置控制器的标识符。您可以通过以下方式执行此操作:
我希望这会有所帮助。
答案 1 :(得分:2)
您必须为视图控制器指定 Storyboard ID 。
IB>显示身份检查器>身份>故事板ID
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let viewcontroller = storyboard.instantiateViewControllerWithIdentifier("viewController")
as? UIViewController
if let navigationController = self.navigationController {
navigationController.pushViewController(viewcontroller!, animated: true)
}