Скрыть MKUserLocation, когда MKMapView показываетUserLocation == ДА - PullRequest
6 голосов
/ 15 марта 2012

После установки mapView.showsUserLocation в значение true можно ли получать обновления местоположения, не отображая всплывающее окно MKUserLocation? Возврат nil в mapView:viewForAnnotation: просто показывает пузырь, а возврат любого другого вида аннотации показывает аннотацию, которая мне не нужна.

Ответы [ 2 ]

25 голосов
/ 15 марта 2012

Вы можете скрыть представление местоположения пользователя в методе делегата didAddAnnotationViews:

-(void)mapView:(MKMapView *)mapView didAddAnnotationViews:(NSArray *)views
{
    MKAnnotationView *ulv = [mapView viewForAnnotation:mapView.userLocation];
    ulv.hidden = YES;
}
2 голосов
/ 19 января 2017

Swift 3:

func mapView(_ mapView: MKMapView, didAdd views: [MKAnnotationView]) {
   if let userLocation = mapView.view(for: mapView.userLocation) {
        userLocation.isHidden = true
   }
}
...