猿问

如何从课程中以编程方式加载故事板?

我的问题是我正在寻找使用storyboardxib的方法。但我找不到以编程方式加载和显示故事板的正确方法。Project开始使用xib进行开发,现在很难将所有xib文件嵌套在storyboard中。所以我在代码中寻找一种方法,比如alloc, init, push用于viewControllers。在我的情况下,我在故事板中只有一个控制器:UITableViewController它有静态单元格,其中包含我想要显示的一些内容。如果有人知道在没有大量重构的情况下使用xib和storyboard工作的正确方法,我将非常感谢您的帮助。



凤凰求蛊
浏览 507回答 3
3回答

森栏

在故事板中,转到“属性”检查器并设置视图控制器的标识符。然后,您可以使用以下代码显示该视图控制器。UIStoryboard *sb = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];UIViewController *vc = [sb instantiateViewControllerWithIdentifier:@"myViewController"];vc.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;[self presentViewController:vc animated:YES completion:NULL];

呼唤远方

斯威夫特3let storyboard = UIStoryboard(name: "Main", bundle: nil)let vc = storyboard.instantiateViewController(withIdentifier: "viewController")self.navigationController!.pushViewController(vc, animated: true)斯威夫特2let storyboard = UIStoryboard(name: "Main", bundle: nil)let vc = storyboard.instantiateViewControllerWithIdentifier("viewController")self.navigationController!.pushViewController(vc, animated: true)条件将故事板ID分配给视图控制器。故事板IDIB>显示身份检查器>身份>故事板ID斯威夫特(遗产)let storyboard = UIStoryboard(name: "Main", bundle: nil)let vc = storyboard.instantiateViewControllerWithIdentifier("viewController") as? UIViewControllerself.navigationController!.pushViewController(vc!, animated: true)编辑:Swift 2在Fred A.的评论中提出如果你想在没有任何navigationController的情况下使用你必须使用如下:    let Storyboard  = UIStoryboard(name: "Main", bundle: nil)    let vc = Storyboard.instantiateViewController(withIdentifier: "viewController")    present(vc , animated: true , completion: nil)

慕容森

在属性检查器中,为该视图控制器提供标识符,以下代码适用于我UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];DetailViewController *detailViewController = [storyboard instantiateViewControllerWithIdentifier:@"DetailViewController"];[self.navigationController pushViewController:detailViewController animated:YES];
随时随地看视频慕课网APP

相关分类

iOS
我要回答