首先请注意,我没有多次注册为观察者,如其他各种问题中所述。带有EKEventStoreChanged通知的通知中心多次使用不同的通知调用
当我在本机日历应用程序中更改某些内容并返回到我的应用程序时,选择器会以不同的通知调用4-5次。
在viewDidLoad
我除去任何可能观察员和注册一次agian:
NotificationCenter.default.removeObserver(self)
NotificationCenter.default.addObserver(self, selector: #selector(reloadModelData(notification:)), name: Notification.Name.EKEventStoreChanged, object: nil)
的相应的方法:
此输出“的方法称为NSConcreteNotification 0x170246300 {
@objc private func reloadModelData(notification: NSNotification) { debugPrint("method called \(notification)") }
信息name = EKEventStoreChangedNotification; object =; userInfo = {\ n EKEventSt oreChangedObjectIDsUserInfoKey =(\ n \“x-apple-eventkit:/// Location/p259707 \”,\ n \“x-apple-eventkit:/// Event/p264955 \”\ n); \ n}}“ “方法调用NSConcreteNotification 0x174258840 {name = EKEventStoreChangedNotification; object =; userInfo = {\ n EKEventStoreChangedObjectIDsUserInfoKey =(\ n \“x-apple-eventkit:/// Location/p259707 \”,\ n \“x-apple-eventkit:/// Event/p264955 \”\ n); \ }}“ ”方法名为NSConcreteNotification 0x17024b250 {name = EKEventStoreChangedNotification; object =; userInfo = {\ n EKEventStoreChangedObjectIDsUserInfoKey =(\ n \“x-apple-eventkit:/// Location/p259707 \”,\ n \“x-apple-eventkit:/// Event/p264955 \”\ n); \ }}“ ”方法名为NSConcreteNotification 0x174253b00 {name = EKEventStoreChangedNotification; object =; userInfo = {\ n EKEventStoreChangedObjectIDsUserInfoKey =(\ n \“x-apple-eventkit:/// Location/p259707 \”,\ n \“x-apple-eventkit:/// Event/p264955 \”\ n); \ N}}”
有谁知道如何解决这个问题。含义只有在收到此观察者的一个单一的呼叫重新进入应用程序时?
请说明您有问题。当你提出建议时,你不明白你的意思。 –
我编辑了相应的问题 – ph1lb4