我想观察特定的变化NSManagedObject
并相应地更新 UI。
我不想保留引用,NSManagedObject
因为它可能随时被删除(即通过远程推送通知的结果)。
目前我正在设置NSFetchRequest
并实现这一目标NSFetchedResultsController
。NSFetchedResultsControllerDelegate
但想要简化这个解决方案(见下文)。
有没有什么简单的方法可以在NSManagedObject
不使用 的情况下观察变化NSFetchedResultsControllerDelegate
?
谢谢你!
\n\n示例代码 (Xcode Playground)\n
\n\nimport PlaygroundSupport\nimport Cocoa\nimport CoreData\n\nPlaygroundPage.current.needsIndefiniteExecution = true\n\nextension NSManagedObject {\n\n public static var entityName: String {\n let className = String(describing: self)\n return className.components(separatedBy: ".").last!\n }\n\n public convenience init(in context: NSManagedObjectContext) throws {\n let entityName = type(of: self).entityName\n guard let entityDescription = NSEntityDescription.entity(forEntityName: entityName, in: context) else {\n fatalError()\n }\n self.init(entity: …
Run Code Online (Sandbox Code Playgroud)