目前,我有一个应用程序,可以在 map 上显示各种图钉。我尝试设置mapView.showsUserLocation = YES;来显示用户的当前pos,但是这使我的应用程序崩溃(“程序收到信号:SIGABRT”),并出现以下错误消息:

Mon Oct 19 12:31:27 unknown Hull Ads[3111] <Error>: *** -[MKUserLocation counter]: unrecognized selector sent to instance 0x10ad60
Mon Oct 19 12:31:27 unknown Hull Ads[3111] <Error>: *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[MKUserLocation counter]: unrecognized selector sent to instance 0x10ad60'
Mon Oct 19 12:31:27 unknown Hull Ads[3111] <Error>: Stack: (...)

这有点令人困惑,因为我没有使用过MKUserLocation,还是问题所在?

该应用程序确实将CoreLocation用于其他不相关的目的,但是当尚未使用CoreLocation时,该应用程序会以相同的方式进行响应。

如果有人可以帮助,那就太好了!

谢谢
- 詹姆士

最佳答案

确保在此方法中包括以下内容:

- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation {
    if ([annotation class] == MKUserLocation.class) {
        return nil;
    }
    ...
}

我希望您现在已经解决了这个问题;)

关于objective-c - 使用MKMapView的showUserLocation属性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1588202/

10-11 19:31