/ / Como faço para que as anotações se pareçam com o indicador de local atual? - ios, swift, mkmapview

Como faço as anotações parecerem o indicador de local atual? - ios, rápido, mkmapview

Estou tentando personalizar as anotações no mapa e, em vez de pinos, quero que as anotações se pareçam com o indicador de localização atual. Como eu faria isso? Qualquer conselho seria ótimo!

Respostas:

1 para resposta № 1

Em geral, você pode usar o objeto de anotação personalizado que estende o MKPointAnnotation. Mas se você precisar alterar apenas a imagem do pino, poderá evitar a subclasse e apenas implementar esse método

func mapView(mapView: MKMapView, viewForAnnotation annotation: MKAnnotation) -> MKAnnotationView? {

let identifier = "MyPin"

if annotation.isKindOfClass(MKUserLocation) {
return nil
}

var annotationView = mapView.dequeueReusableAnnotationViewWithIdentifier(identifier)

if let annotationView = annotationView {
annotationView.annotation = annotation
} else {
annotationView = MKAnnotationView(annotation: annotation, reuseIdentifier: identifier)
annotationView.image = UIImage(named: "myPinImage")
}

return annotationView
}

Portanto, basta encontrar a imagem correta e substituir os pinos por ela. Mas se você quiser acompanhar as possíveis alterações da imagem currentLocation padrão, poderá reutilizar a visualização padrão

let annotationView = mapView.viewForAnnotation(mapView.userLocation());