Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios Swift:UIView中的ApplicationIDBecMeactive?_Ios_Swift - Fatal编程技术网

Ios Swift:UIView中的ApplicationIDBecMeactive?

Ios Swift:UIView中的ApplicationIDBecMeactive?,ios,swift,Ios,Swift,我是iOS编程新手。我想问的是,对于UIView中的UIViewController,是否有任何方法与applicationdidebomeactive等效?在后台运行后,每当视图处于活动状态时,我都需要更新视图。谢谢大家! 您可以在此处使用通知中心 您可以在您想要通知的视图中注册观察者 NotificationCenter.default.addObserver(self, selector: #selector(appIsActivited), name: NSNotification.Na

我是iOS编程新手。我想问的是,对于UIView中的UIViewController,是否有任何方法与
applicationdidebomeactive
等效?在后台运行后,每当视图处于活动状态时,我都需要更新视图。谢谢大家!

您可以在此处使用
通知中心

您可以在您想要通知的视图中注册观察者

NotificationCenter.default.addObserver(self, selector: #selector(appIsActivited), name: NSNotification.Name.UIApplicationDidBecomeActive, object: nil)
当应用程序处于活动状态时,将触发通知,并调用
appisactivated
方法

 @objc func appIsActivited() {
    //do something
}

注意:当不再需要释放视图占用的内存时,不要忘记从视图中删除观察者。

Swift 4.2中的注意:NotificationCenter.default.addObserver(self,selector:#selector(appIsActivited),name:UIApplication.didBecomeActiveNotification,object:nil)当调用
deinit
时,不要忘记删除obesrver,因为iOS9+不需要删除观察器。看起来它使用了弱链接,所以内存将被正确释放。