应用程序恢复时重新加载 ViewController

Spe*_*cer 5 iphone view uiviewcontroller ios swift

我的应用程序只有一个ViewController,因此一个ViewController.swift

我希望ViewController在用户恢复应用程序(多任务处理)时重新加载它。viewDidLoad()函数中的初始化代码在应用程序恢复时不会触发。我希望在应用程序恢复时触发此代码,因此我想ViewController在应用程序恢复时重新加载。

在 Swift 中有一种优雅的方法可以做到这一点吗?

谢谢你。

Nis*_*ant 5

您可以向视图控制器添加观察者,以在应用程序进入前台时发出通知。reloadView每当您的应用程序进入前台时,观察者都会调用此方法。self.reloadView()请注意,当视图第一次加载时,您必须自己调用此方法。

下面是 Swift 代码:

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.

    self.reloadView()

    NSNotificationCenter.defaultCenter().addObserver(self,
     selector: "reloadView",
     name: UIApplication.willEnterForegroundNotification,
     object: nil)
}

func reloadView() {
    //do your initalisations here
}
Run Code Online (Sandbox Code Playgroud)