2017-12-03 23 views
0

내가 didSelect view: MKAnnotationView에 핀 색상을 변경하기 위해 노력하고있어 :스위프트 : didSelect보기에서 변경 핀 색상 : MKAnnotationView

func mapView(_ mapView: MKMapView, 
      didSelect view: MKAnnotationView) { 
    let selectedAnnotation = view.annotation as? MKPointAnnotation //ColorPointAnnotation 
    //self.textField.text = selectedAnnotation!.title 
    preferredSpot = selectedAnnotation!.title! 
    view.tintColor = UIColor.green 
} 

는하지만 내가 핀에 누를 때 변경되지 것이 - 빨간색 남아있다. 아무도 이유를 알 수 있습니까? 그리고/또는 어떻게 변경합니까?

답변

1

사용 pinTintColor 대신 내가 MKAnnotationView 및하려면 tintColor로 변경하지만, 그것은 더 큰되고 도움이되지 않지만 빨간색으로 유지 tintColor

func mapView(_ mapView: MKMapView, didSelect view: MKAnnotationView) { 
    if let view = view as? MKPinAnnotationView { 
     view.pinTintColor = UIColor.green 
    } 
} 
1

위임 기능은 다음과 같습니다

optional func mapView(_ mapView: MKMapView, 
     didSelect view: MKAnnotationView) 
+0

의 –

+1

@ElenaRubilova을 MKAnnotationView를 MKPinAnnotationView로 변환해야합니다. Kosuke 응답을 따르십시오.) –