Il mio codice ha funzionato bene da iOS 7 a 8. Con l'aggiornamento di ieri le immagini personalizzate sui miei pin sono state sostituite dall'immagine pin standard. Qualche suggerimento?MapKit non mostra immagine pin di annotazione personalizzata su iOS9
Il mio codice:
extension ViewController: MKMapViewDelegate {
func mapView(mapView: MKMapView, viewForAnnotation annotation: MKAnnotation) -> MKAnnotationView! {
if annotation is MKUserLocation {
return nil
}
let reuseId = String(stringInterpolationSegment: annotation.coordinate.longitude)
var pinView = mapView.dequeueReusableAnnotationViewWithIdentifier(reuseId) as? MKPinAnnotationView
if pinView == nil {
pinView = MKPinAnnotationView(annotation: annotation, reuseIdentifier: reuseId)
pinView!.canShowCallout = true
pinView!.image = getRightImage(annotation.title!!)
}
let button = UIButton(type: UIButtonType.DetailDisclosure)
pinView?.rightCalloutAccessoryView = button
return pinView
}
}
La funzione per ottenere l'immagine restituisce un UIImage
in base al nome:
func getRightImage (shopName:String)-> UIImage{
var correctImage = UIImage()
switch shopName
{
case "Kaisers":
correctImage = UIImage(named: "Kaisers.jpg")!
default:
correctImage = UIImage(named: "sopiconsmall.png")!
}
return correctImage
}
Ho avuto lo stesso problema esatto. La tua soluzione suggerita l'ha sistemata per me, grazie. – Perex19
Questa soluzione ha funzionato anche per me. Grazie! –
Grazie! È stato perfetto. – Natasha