我了解原始设置器和非原始设置器(KVO 通知等)之间的区别。但是,如果我编写自己的 setValue:forKey: 并调用 setPrimitiveValue:forKey:,我是否必须将 SAME 值传递给它?我阅读了文档,我用谷歌搜索了它,但我根本找不到任何关于这个的讨论。
编辑:谢谢,adpalumbo 和 Dave FN。你们都同意它不必是相同的值。我真正的问题是这个。我编写自己的 setter 和 getter。然后我在 NSManagedObject 上调用 setter 以更改其原始值,但由于自定义 getter 的编写方式,它仍然返回旧值(原始值已被修改。但如果您在修改前后调用自定义 getter ,您将看不到任何变化。)。在此之后,我在 NSManagedObjectContext 上调用 hasChanges 并返回 NO!如果我在上下文中调用 save ,则根本不会保存更改。任何想法?正常行为?潜在的核心数据错误?