首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用addObserver激活通知

如何使用addObserver激活通知
EN

Stack Overflow用户
提问于 2020-08-26 13:52:24
回答 1查看 37关注 0票数 0

在一个类实例中,我在方法setUpNotificationHandling下面调用。

我只在代码中实例化一次类,而不是在提交数据时。

观察者在添加到通知队列后是否保持活动状态,或者我是否需要找到一种方法来一次又一次地调用它们

代码语言:javascript
运行
复制
init(modelName: String) {
    self.modelName = modelName
    setUpNotificationHandling()
  }

private func setUpNotificationHandling() {
     
    let notificationCenter = NotificationCenter.default
 
    if #available(iOS 13.0, *) {
      notificationCenter.addObserver(self, selector: #selector(saveChanges(_:)), name: UIScene.willDeactivateNotification, object: nil)
    } else {
      notificationCenter.addObserver(self, selector: #selector(saveChanges(_:)), name: UIApplication.willResignActiveNotification, object: nil)
    }
     
  }




@objc func saveChanges(_ notification: Notification) {
        
        saveChanges()
    }
    
    private func saveChanges() {
        guard self.managedObjectContext.hasChanges  else {
           
            return
        }
        
        do {
          
            try self.managedObjectContext.save()
        }
        catch {
            print("unable to save moc")
            print("\(error), \(error.localizedDescription)")
        }
    }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-26 14:08:26

在观察者死亡或调用removeObserver(_:)之前,NotificationCenter将一直向观察者发送通知。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63591253

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档