重新加载应用程序,就好像它在进入前景时被杀死一样

时间:2017-11-20 10:37:11

标签: ios appdelegate

我有一个使用Tab bar模板创建的应用程序(因此在应用程序中有一个故事板和两个视图控制器)。

有时此应用可以进入后台(例如,用户按下主页按钮,而不是再次打开应用):是否可以在applicationDidBecomeActive appDelegate时完全重新加载(*)应用火灾?

(*)完全重新加载意味着标签栏控制器viewDidLoad再次触发:应用程序的行为应该像被杀死一样

1 个答案:

答案 0 :(得分:1)

我相信你有一个非常坚实的理由,因为否则它是一个完美的灾难配方:D

无论如何,您可以通过使用

重置applicationDidBecomeActive中应用的rootView控制器来实现它
    self.window?.rootViewController = nil
    let storyBoard = UIStoryboard(name: "Main", bundle: nil)
    let vc = storyBoard.instantiateInitialViewController()
    self.window?.rootViewController = vc

或者,如果您的Tab栏控制器不是rootViewController,您可以实例化一个新的标签栏控制器并在丢弃旧标签栏控制器时加载它。