等待!在您点击可能的副本之前...'关键,请到最后阅读我的描述!
在我的应用程序中,我有两个故事板文件,一个是自动打开的初始故事板(在项目设置主界面中设置。
当用户点击第一个故事板视图中的特定项目时,我想在特定点打开第二个故事板。
我已经阅读了关于使用多个故事板的几个教程(以及其他关于SO的门票),但所有这些都似乎都使用了UINavigationController。但是在我的应用程序中,我没有使用UINavigationController作为底层基本控制器。
我想要做的只是在第一个故事板(或第一个故事板指示的应用程序代理)中实例化2.故事板,然后处理第一个故事板的整个视图/控制器层次结构,因为它&#39 ; s不需要在后台(直到用户决定返回)。
我知道我可以实例化第二个故事板并通过以下方式获取其视图控制器:
var s:UIStoryboard = UIStoryboard(name: storyboardName, bundle: bundle);
var c:UIViewController = s.instantiateInitialViewController() as UIViewController;
但是如何从那里开始正确地显示2.故事板视图(并可能处理/删除1.故事板的视图)?
答案 0 :(得分:1)
如果您根本不需要旧故事板中的任何内容,请将UIWindow的rootViewController
属性设置为c
。如果您的旧故事板或视图没有其他强引用,ARC将取消分配它们。
答案 1 :(得分:0)
只是做:
UIApplication.sharedApplication().keyWindow.rootViewController = c