2016-08-26 86 views
1

预条件(SWIFT):“开卷”从任意视图控制器回到故事板的初始视图控制器

  1. 我有在单个故事板许多视图控制器的应用程序。
  2. 有一个导航控制器,但前几个视图控制器不在其中。 (我指出了这个B/C我不能只是“跳到根”在这里。)
  3. 有一个“会话过期”事件,触发x分钟后。

使用案例:

无论哪个屏幕的用户,如果我看到“会话过期”的通知,我想给用户发送回我的故事板的初始视图控制器。

我的问题:

我究竟怎样才能做到,如果没有每一个单一的视图控制器上手动创建一个展开SEGUE?有什么方法可以“摆脱”故事板的当前实例,并在开始时重新开始?

(我不是担心记住他们目前的状态并没有什么......这不要紧,这种情况下,它已过期,他们输了,他们开始了。)

回答

1

你可以从你的故事板标识符“抢”相关的viewController之后 - 如爬完Araballi他回答说 - 设置您的AppDelegate上的window.rootViewController财产。 我认为这种方法比在你已经拥有的UI之上呈现viewController更好。

1

这种情况的最佳解决方案将通过使用storyboard id导航到视图控制器。

点击main.storyboard并点击viewcontroller。在身份检查器启用故事板使用故事板ID并给它一个ID。

let storyboard : UIStoryboard = UIStoryboard(name: "Main", bundle: nil) 
let vc : UINavigationController = storyboard.instantiateViewControllerWithIdentifier("mainNavigationStoryBoard") as! UINavigationController 
self.presentViewController(vc, animated: true, completion: nil) 

只需使用上面的代码导航到特定视图 - 控制的sesssion过期

相关问题