在iPhone SDK中,我们是否只能观察对象,而不是像CLLocationCoordinate2D
那样的支柱?
实施例:
我有一些非常简单的代码,我想观察CLLocationCoordinate2D
类型的属性,我确保在ABC.m中合成它。
@interface ABC
{
CLLocationCoordinate2D currentLocation;
}
@property (nonatomic, readwrite) CLLocationCoordinate2D currentLocation;
现在我在另一个班上:
[ABC addObserver:self forKeyPath:@"currentLocation" options:NSKeyValueObservingOptionNew context:NULL];
出于某种原因,observeValueForKeyPath方法从不报告密钥路径“currentLocation
”已更改。
谢谢,
SJS
答案 0 :(得分:0)
这是您的字面调用吗?
[ABC addObserver:self forKeyPath:@"currentLocation" options:NSKeyValueObservingOptionNew context:NULL];
如果是这样,那么我认为问题在于您正在观察ABC类,而不是ABC类的实例。假设您有ABC类的实例,请尝试观察。
ABC* myObject = [ [ [ ABC alloc ] init ] autorelease ];
[ myObject addObserver: self forKeyPath: @"currentLocation" options: NSKeyValueObservingOptionNew context: NULL ];