无论如何都要观察另一个类的属性,比如观察iOS中的单例实例。我已经尝试过,但我不知道从另一个类写出keypath会不会很热。
[self addObserver:self forKeyPath:@"otherclass/keypath" options:NSKeyValueObservingOptionNew context:NULL];
答案 0 :(得分:0)
您是否尝试过这样做:
[Otherclass addObserver:self forKeyPath:@"keypath" options:NSKeyValueObservingOptionNew context:NULL];
答案 1 :(得分:0)
addObserver
消息的接收者是被观察对象。所以它应该是你的单身人士的实例。 keypath应该以此单例的可观察属性的名称开头。 E.g:
[[SingletonClass instance] addObserver:self forKeyPath:@"propertyName" options:NSKeyValueObservingOptionNew context:NULL];
密钥路径可以包含由点分隔的属性名称链。仅用于说明:如果要观察关键窗口的根视图控制器,可以执行
[[UIApplication sharedApplication] addObserver:self
forKeyPath:@"keyWindow.rootViewController"
options:NSKeyValueObservingOptionNew context:NULL];