【问题标题】:Application delegate event(ex.: applicationWillTerminate) to my custom class [duplicate]应用程序委托事件(例如:applicationWillTerminate)到我的自定义类 [重复]
【发布时间】:2018-10-19 01:26:59
【问题描述】:

我正在创建一个应用程序,我在其中创建了我想要捕获应用程序级别事件的自定义静态类(applicationDidBecomeActive、applicationWillResignActive 和 applicationWillTerminate)。

例如: 我想在我的自定义类中设置一个变量:IS_ACTIVE,默认为 false

class CustomClass {
    static var IS_ACTIVE: Bool = false;
}

我想在 applicationDidBecomeActive 事件发生时将 IS_ACTIVE 设置为 true,

现在我正在通过 applicationDidBecomeActive 发生的“AppDelegate.swift”文件设置 IS_ACTIVE,

但我想要的是 applicationDidBecomeActive 应该出现在我的自定义中 类。

请帮助我。谢谢

【问题讨论】:

  • 嗨@rmaddy,它与您提到的不重复或相同。因为我不想与视图控制器集成。我想在简单的自定义类中捕获该事件(它不是任何控制器。)
  • 视图控制器只是另一个类的一个例子。这仍然是相同的问题和解决方案。
  • 是的,但它不适合我。有什么建议吗?
  • 必须设置您尝试的代码。我建议发布一个新问题,让您尝试收听并回复通知。

标签: ios swift uiapplicationdelegate


【解决方案1】:

据我所知,您应该添加观察者来监听应用程序事件,如下所示

NotificationCenter.default.addObserver(self, selector: #selector(self.appBecomeActive), name: NSNotification.Name.UIApplicationDidBecomeActive, object: nil)

记得在你的类 deinit 时移除观察者

【讨论】:

  • 嗨@baohung02,谢谢我尝试了您的建议,但没有按预期工作。我认为这只适用于控制器类而不是自定义类。
  • 好的,默认总是更好:p
猜你喜欢
  • 2011-08-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-04-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多