2016-08-16 11 views
0

숨기기 :나는 프로그램이 코드를 사용하여 <code>mapView(mapView: MKMapView, didDeselectAnnotationView view: MKAnnotationView)</code> 함수를 호출하기 위해 노력하고있어 MKAnnotationView 스위프트

dispatch_async(dispatch_get_main_queue()) { 
    for item in self.largeMapView.selectedAnnotations { 
      self.largeMapView.deselectAnnotation(item, animated: false) 
} 
} 

을하지만 아무것도하지 않습니다. 지도를 누르면 호출되지만, 누르지 않아도 호출되기를 원합니다.

dispatch_async(dispatch_get_main_queue()) { 
    for item in self.largeMapView.selectedAnnotations { 
    self.largeMapView.deselectAnnotation(item, animated: false) 
} 
    myView.pinTintColor = UIColor.greenColor() 
    calloutView.hidden = true 
} 

수동으로 하나의 "해제"로 pinTintColor 변경, 수동 calloutView이 문제를 해결 숨어 :

+0

내가 원하는 것을 이해하지 못한다면, 영어를 사용하십시오. –

+0

'MKMapView'에서 현재 선택된 주석을 닫고 싶습니다. 일반적으로 이것은 사용자가 선택한 핀의 바깥 쪽, mapView의 다른 곳을 누를 때 발생합니다. 그러나 사용자가 아무데도 누를 필요가 없도록 코드에서이를 트리거하고 싶습니다. – Alk

+0

나는 콜 아웃을 취소하고 핀을 '선택 해제'하여 다음 번 핀을 누를 때 다시 선택됩니다. 나는지도에서 그 핀을 제거하고 싶지 않습니다. – Alk

답변

0

정확히 확실한 이유가 아니라 전체에서이 코드는 문제를 해결하는 것 같다.