我想要viewController的更新数据方法。
所以我想在applicationDidBecomeActive(_ application: UIApplication)
时使用viewController的更新方法。
怎么可能?
答案 0 :(得分:2)
使用UIApplicationDidBecomeActiveNotification
。请参阅此answer。
答案 1 :(得分:1)
这可能对你有帮助(在Swift 4中测试)
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
NotificationCenter.default.addObserver(self,
selector: #selector(applicationDidBecomeActive),
name: Notification.Name.UIApplicationDidBecomeActive,
object: nil)
}
}
@objc func applicationDidBecomeActive() {
print("UIApplicationDidBecomeActive")
}
注意:当您的视图控制器不再使用/内存时,不要忘记删除观察者(因为这是一个应用程序级别的观察者,并且每次您的应用程序变为活动时都会被调用,无论是您的视图控制器是否处于活动状态。
以下是删除观察者的代码:
NotificationCenter.default.removeObserver(self,
name: Notification.Name.UIApplicationDidBecomeActive,
object: nil)