Swift – 更改UNnotification徽章号码
我试图听取IconBadgeNumber的更改。
在我的Appdelegate中我有:
extension AppDelegate: UNUserNotificationCenterDelegate { func userNotificationCenter(_ center: UNUserNotificationCenter, willPresent notification: UNNotification, withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void) { completionHandler([.alert, .badge]) }
}
并在我的控制器中:
override func viewDidLoad() { super.viewDidLoad() UIApplication.shared.addObserver(self, forKeyPath: "applicationIconBadgeNumber", options: .new, context: nil) } @objc override func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [NSKeyValueChangeKey : Any]?, context: UnsafeMutableRawPointer?) { deliveredNotif = UIApplication.shared.applicationIconBadgeNumber if keyPath == "applicationIconBadgeNumber" { deliveredNotif = UIApplication.shared.applicationIconBadgeNumber } }
但是,它似乎不起作用。 我试图听取更改,以更新应用程序内的图标(显示未读通知的数量)。
任何人都可以帮忙? 我是新来的,即使我环顾四周,似乎我无法解决这个问题。
谢谢!