Назначение несовместимых типов указателей CLLocationManager

Итак, я разработал отдельное приложение компаса (стрелка вращается, чтобы указать на фиксированную точку широты/долготы), которое отлично работает как отдельный проект, но когда я пришел, чтобы включить его в более широкий проект, у меня возникла проблема.

Сначала я получаю семантическое предупреждение (несовместимые типы указателей, назначаемые «CLLocationManager*» из «CLLocation *__strong») для:

- (void)locationManager:(CLLocationManager *)manager 
didUpdateToLocation:(CLLocation *)newLocation 
       fromLocation:(CLLocation *)oldLocation {

if (newLocation.horizontalAccuracy >= 0) {

    self.recentLocation = newLocation; (WARNING HERE)

CLLocation *POI2location = [[CLLocation alloc]
                                initWithLatitude:kPOI2Latitude 
                                longitude:kPOI2Longitude];
    CLLocationDistance delta = [POI2location 

                                distanceFromLocation:newLocation];

И далее я получаю фатальную ошибку (свойство «координата» не найдено в объекте типа «CLLocationManager») для:

- (void)locationManager:(CLLocationManager *)manager
   didUpdateHeading:(CLHeading *)newHeading {

if (self.recentLocation != nil && newHeading.headingAccuracy >= 0) {
    CLLocation *POI2Location = [[CLLocation alloc]
                                initWithLatitude:kPOI2Latitude
                                longitude:kPOI2Longitude];

    double course = [self headingToLocation:POI2Location.coordinate
                                    current:recentLocation.coordinate]; (WARNING HERE)

По какой-то причине ему не нравится 'recentLocation' сейчас, тогда как раньше все работало отлично. Может ли кто-нибудь указать мне, что мне не хватает. Я уверен, что это очевидно для кого-то с большим опытом, чем я.

Спасибо заранее.


person hughg    schedule 21.06.2012    source источник


Ответы (1)


Сегодня утром снова начал, и ответ смотрит мне прямо в лицо!

В файле .h я бы поместил

@property (strong, nonatomic) CLLocationManager *recentLocation;

когда я должен был положить

@property (strong, nonatomic) CLLocation *recentLocation;
person hughg    schedule 22.06.2012