在KVO路径上更改对象

时间:2014-11-18 08:45:05

标签: objective-c key-value-observing

我有一个对象A,它有一个属性B. B是一个具有 int 类型属性C的对象。然后在另一个对象中,我使用KVO观察具有键路径 B.C 的对象A.如果我改变C的值,那么我可以收到通知。但是如果我将另一个对象分配给B,或者将B分配给一个新对象,我是否也会收到通知?

1 个答案:

答案 0 :(得分:0)

这一切都归结为你的意思是通过为B分配或分配另一个对象。据我所知,你有一个名为B的变量引用你正在观察的对象。 KVO使用对象而不是变量,因此如果将变量B指向另一个对象,KVO将保留在原位并且不会自动扩展到另一个对象。希望这会有所帮助。