Наблюдение CLLocationCoordinate2D в iphone SDK
В iPhone SDK мы можем наблюдать только объекты, а не стойки, как CLLocationCoordinate2D
?
Пример: у меня есть очень простой код, где я хотел бы наблюдать свойство типа CLLocationCoordinate2D
Я убедился, чтобы синтезировать его в ABC.m.
@interface ABC
{
CLLocationCoordinate2D currentLocation;
}
@property (nonatomic, readwrite) CLLocationCoordinate2D currentLocation;
Сейчас в другом классе я делаю:
[ABC addObserver:self forKeyPath:@"currentLocation" options:NSKeyValueObservingOptionNew context:NULL];
По какой-то причине метод наблюдений ValueForKeyPath никогда не сообщает, что keypath "currentLocation
изменилось
Спасибо,
SJS
1 ответ
Это буквальный звонок, который вы делаете?
[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 ];