是否有类似于applicationDidBecomeActive
的方法,但这适用于视图控制器。我知道viewWillAppear
和viewDidAppear
,当你导航到这个视图控制器时它会起作用,但我需要在用户离开应用程序时调用的东西(通过按下主页按钮),然后重新打开该应用程序。我有一个全局变量,它在视图控制器的viewDidLoad
中定义,但在applicationDidBecomeActive
方法中重新定义。这意味着如果应用程序进入后台,然后返回到前台,变量将会更改。我需要像viewDidBecomeActive
方法那样重置它。
答案 0 :(得分:4)
您只需注册视图控制器即可收听UIApplicationDidBecomeActiveNotification通知。
在视图控制器的viewWillAppear方法中添加以下内容:
[[NSNotificationCenter defaultCenter]addObserver:self
selector:@selector(yourMethod)
name:UIApplicationDidBecomeActiveNotification
object:nil];
答案 1 :(得分:0)
Swift 4
NotificationCenter.default.addObserver(
self,
selector:#selector(refreshWhenAppBecomesActive),
name: NSNotification.Name.UIApplicationDidBecomeActive,
object: nil)
答案 2 :(得分:0)
雨燕5
NotificationCenter.default.addObserver(
self,
selector:#selector(yourMethod),
name: UIApplication.didBecomeActiveNotification,
object: nil)
以及您的职责
@objc func yourMethod() {
// your code
}